Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >R中插值样条的多项式系数

R中插值样条的多项式系数
EN

Stack Overflow用户
提问于 2016-01-29 14:03:15
回答 1查看 1.2K关注 0票数 3

我有一组测量值,我希望在R中使用三次样条插值。因为这些只是分段多项式,所以我想把插值函数进行代数积分。所以我需要系数。有什么办法可以得到这些吗?

调用splines::interpSpline(foo, bar)$coef似乎不返回实际的多项式系数。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-30 18:41:42

splines::interpSpline(x,y)$coef的输出给出了x(i)和x(i+1) 之间的多项式系数,用( x - x(i) )的幂表示,而不是x的幂,这是有意义的,因为得到的系数具有合理的大小,易于解释:例如,每个常数项都是y(i),二次系数在x(I)处给出凹度,等等。

例如,这个输出

代码语言:javascript
运行
AI代码解释
复制
> x <- c(1,3,6,9)
> y <- c(3,1,4,1)
> splines::interpSpline(x,y)$coef
     [,1]        [,2]       [,3]        [,4]
[1,]    3 -1.54054054  0.0000000  0.13513514
[2,]    1  0.08108108  0.8108108 -0.16816817
[3,]    4  0.40540541 -0.7027027  0.07807808
[4,]    1 -1.70270270  0.0000000  0.00000000

意味着

  • 在区间1,3上多项式是3 - 1.54054054*(x-1) + 0.13513514*(x-1)^3
  • 在区间3,6上,多项式为1 + 0.08108108*(x-3) + 0.8108108*(x-3)^2 - 0.16816817*(x-3)^3
  • 在区间6,9上,多项式为4 + 0.40540541*(x-6) - 0.7027027*(x-6)^2 + 0.07807808*(x-6)^3

我看不出最后一行有多大用处,它描述了数据的正确端点x=9之外的样条的线性延续。

要积分这些,并不比积分x的幂更困难,但是,如果目标是得到一个连续的反导数,当然需要选择积分常数。多项式形式的选择使得积分常数的处理变得更加容易。假设我们选择左端点值为0的反导数,其余的如下所示:

  • 在区间1,3上,反导数是3*(x-1) - 1.54054054*(x-1)^2/2 + 0.13513514*(x-1)^4/4
  • 在区间3,6上,反导数为C1 + 1*(x-3) + 0.08108108*(x-3)^2/2 + 0.8108108*(x-3)^3/3 - 0.16816817*(x-3)^4/4。这里,C1是x=3前一个反导数的值。
  • 在区间6,9上,反导数为C2 + 4*(x-6) + 0.40540541*(x-6)^2/2 - 0.7027027*(x-6)^3/3 + 0.07807808*(x-6)^4/4。这里,C2是x=6前一个反导数的值。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35094843

复制
相关文章
php 使用PHPEXcel导出表数据
PHPEXCEL&nbsp;~&nbsp;13KB&nbsp;&nbsp;&nbsp;&nbsp;下载(28)
用户7999227
2021/09/22
3.4K0
如何使用Google工作表创建杀手级数据仪表板
每家公司都围绕目标开展业务并使用关键绩效指标(KPI)跟踪实现这些目标的进展情况。对于每个目标,团队应能随时轻松地回答以下两个主要问题:
佛壁灯
2018/05/23
5.5K0
如何使用Google工作表创建杀手级数据仪表板
如何在MySQL数据库中创建新表
[IF NOT EXISTS]主要是用于判定新建的表是否存在 engine需要指定存储引擎。可以使用任何存储引擎,如:InnoDB,MyISAM,HEAP,EXAMPLE,CSV,ARCHIVE,MERGE, FEDERATED或NDBCLUSTER。如果不明确声明存储引擎,MySQL将默认使用InnoDB。 column_list较为复杂,为指定表的列表。字段的列用逗号(,)分隔。 column_list的语法如下:
用户7639835
2021/08/26
10.2K0
使用phpexcel操作excel
使用这个组件最让我郁闷的是,它对sheet的名称为中文的不进行处理,暂时还没仔细去查原因。
meteoric
2018/11/15
2.5K2
PHPExcel使用笔记
http://stackoverflow.com/questions/6054444/how-to-set-auto-height-in-phpexcel
Enjoy233
2019/03/05
1.5K0
如何使用 Vue 命名插槽创建多个模板插槽?
这是最基本的示例,如果我们不提供父级的任何slot 内容,则我们将<slot>放在其中的任何内容都会作为后备内容。
前端小智@大迁世界
2022/06/15
2.8K0
如何使用 Vue 命名插槽创建多个模板插槽?
学习Python与Excel:使用Python和xlwt创建Excel工作表
使用Python创建Excel工作表,有很多种方法。本文介绍使用xlwt库创建Excel工作表。
fanjy
2023/02/24
1.3K0
学习Python与Excel:使用Python和xlwt创建Excel工作表
【说站】mysql如何使用语句创建表
2、允许NULL值、DEFAULT表示该列的默认值、PRIMARY KEY用于指定主键、ENGINE用于指定引擎类型。
很酷的站长
2022/11/23
2.2K0
如何用DBeaver创建表?
换MAC后,在安装数据库管理工具时犯了难:Navicat太贵买不起,也厌倦了破解。偶然发现好多大佬在使用免费的DBeaver社区版,就也下载了最新的7.2.2,添加数据库也很顺利,查询也很6,But没有找到创建表的入口:
烟雨平生
2023/03/07
3.1K0
如何用DBeaver创建表?
使用VBA合并工作表
从多个Excel工作表(子工作表)中获取信息,并用子工作表中的所有数据填充汇总工作表(父工作表),这是很多朋友会提到的常见要求。如果部分数据是从添加新工作表到工作簿中而增长的,那么获得这些数据的汇总非常方便,例如,添加单独的工作表,包含新月份的数据。
fanjy
2022/11/16
2K0
使用VBA合并工作表
使用SQL语句创建表_用sql语句创建员工表
create table 表名 (列1 数据类型 1,列2 数据类型) tablespace 表空间
全栈程序员站长
2022/11/19
4.2K0
使用SQL语句创建表_用sql语句创建员工表
plsqldeveloper怎么创建表_如何创建表格
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
全栈程序员站长
2022/11/07
6.7K0
ovirt 上创建vm模板的创建与使用
版权声明:本文为木偶人shaon原创文章,转载请注明原文地址,非常感谢。 https://blog.csdn.net/wh211212/article/details/79977816
shaonbean
2019/05/26
1.9K0
Excel实战技巧54: 创建导航工作表
当工作簿中的工作表不多时,我们只需要单击底部的工作表名到达想要操作的工作表。然而,当有很多工作表时,要找到想要的工作表就需要边单击滚动按钮边查找工作表,这可能要花点时间了。
fanjy
2019/09/24
1.1K0
Excel实战技巧54: 创建导航工作表
使用StyleGAN创建新脚本
将StyleGAN应用于Unicode字符的图像,以查看它是否可以创建新字符。发现了一些有趣的结果如上图。
代码医生工作室
2019/06/21
1.7K0
使用StyleGAN创建新脚本
点击加载更多

相似问题

创建新的工作表PHPExcel

10

PhpExcel创建多个工作表

33

phpexcel不创建新工作表

11

PHPExcel ->创建重复的工作表

15

PHPExcel -在多个工作表中添加模板

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文