如果数据有噪声,您可能需要使用平滑样条拟合它。或者,你可以使用平滑方法中的一种滤波和平滑数据.
的平滑样条年代为指定的平滑参数p以及指定的权重w我.平滑样条最小化
如果没有指定权值,则假定所有数据点的权值为1。
p定义在0和1之间。p= 0产生与数据的最小二乘直线拟合,而p= 1产生三次样条插值。如果不指定平滑参数,则在“感兴趣范围”内自动选择。有趣的是p通常在1/(1+h3./ 6)h是数据点的平均间距,它通常比参数的允许范围小得多。因为平滑样条有一个相关的平滑参数,你可以认为这些拟合在某种意义上是参数。然而,平滑样条也是像三次样条或形状保持插值一样的分段多项式,在本指南中被认为是一种非参数拟合类型。
请注意
平滑样条算法是基于csaps
函数。
文件里的核反应数据carbon12alpha.mat这里显示了三次平滑样条拟合。默认平滑参数(p= 0.99)产生最平滑的曲线。三次样条曲线(p= 1)遍历所有数据点,但不那么平滑。第三条曲线(p= 0.95)遗漏了大量的数据,并说明了“感兴趣的范围”是多么的小p可以。
在曲线拟合应用程序中,选择平滑样条
从模型类型列表中。
您可以指定以下选项:
要从数据中进一步更平滑地拟合,请单击<流畅按钮重复,直到绘图显示出你想要的平滑度。
若要更接近数据,请单击粗糙>直到你对情节感到满意为止。
或者,为平滑参数指定从0到1的任意值。0产生线性多项式拟合(对数据的最小二乘直线拟合),而1产生通过所有数据点的分段三次多项式拟合(三次样条插值)。
点击默认的返回初始值。工具箱尝试选择适合您的数据的默认值。看到对平滑样条函数.
例如:
载入数据对平滑样条函数通过输入:
负载carbon12alpha
在曲线拟合应用程序中,选择角
为X数据和计数
为Y数据.
选择平滑样条
适合的类型。
尝试平滑参数值1
,0.95
,默认值为0.99。
适合
函数这个例子展示了如何使用适合
函数拟合平滑样条模型到数据。
拟合平滑样条模型
加载数据并通过指定拟合平滑样条模型“smoothingspline”
当调用适合函数。
负载ensof =适合(月、压力、“smoothingspline”);情节(f、月压力)
查看计算平滑参数
再次创建模型并使用第三个输出参数查看计算的平滑参数。平滑参数为p
的价值出
结构。默认值取决于数据集。
(f, gof) =适合(月、压力、“smoothingspline”);out.p
ans = 0.9000
使用以下方法指定平滑参数“SmoothingParam”
指定平滑参数为一个新的适合“SmoothingParam”
选择。它的值必须在0到1之间。
f =适合(月、压力、“smoothingspline”,“SmoothingParam”, 0.07);情节(f、月压力)
使用以下方法指定平滑参数fitoptions
另外,使用fitoptions
拟合前指定平滑参数。
选择= fitoptions (“方法”,“顺利”,“SmoothingParam”, 0.07);(f, gof) =适合(月、压力、“顺利”、选择);out.p
ans = 0.0700
作为替代“smoothingspline”
,你可以使用csaps三次平滑样条函数或其他样条函数,允许更大的控制,你可以创建。看到关于曲线拟合工具箱中的样条.
这个例子拟合一些数据使用三次样条插值和几个平滑样条。
在工作区中创建变量:
X = (4*pi)*[0 1 rand(1,25)];Y = sin(x) + 0.2 *(rand(size(x))- 0.5);
打开曲线拟合应用程序,输入:
cftool
选择x
和y
从X数据和Y数据列表。
曲线拟合应用程序拟合并绘制数据。
通过选择三次样条插值拟合数据Interpolant适合类型和方法立方
.
曲线拟合应用程序拟合并绘制三次样条插值。
进入适合的名字cubicsp
.
查看结果窗格。拟合优度统计数据如RMSE没有定义(如南
interpolants)。
三次样条插值被定义为一个分段多项式,其结果是一个系数结构(p
).结构中的“块”的数量比拟合的数据点的数量少一,每块的系数数是4,因为多项式次数是3。你可以检查系数结构p
如果您将fit导出到工作区(例如,输入
).有关系数结构的信息,请参见构造和工作与ppform样条.fitname
每分钟
创造另一个适合的比较。右击你的适合符合表并选择重复“cubicsp”.
通过选择,用平滑样条拟合数据平滑样条.
平滑程度由平滑参数.默认的平滑参数值取决于数据集,并由工具箱自动计算。
对于这个数据集,默认的平滑参数接近1,表明平滑样条接近三次,非常接近通过每个数据点。
将默认平滑参数命名为fitSmooth1
.如果您不喜欢由默认平滑参数产生的平滑级别,您可以指定从0到1的任何值。0产生一个线性多项式拟合,而1产生一个通过所有数据点的分段三次多项式拟合。
本文给出了光滑样条拟合的数值结果。
为了比较,创建另一个平滑样条拟合。右击你的适合符合表并选择重复“smooth1”.将平滑参数改为0.5
命名fitSmooth2
.
比较你的三种匹配的情节。通过增加默认横坐标规模来探索超出数据限制的适合行为。改变坐标轴的极限工具>轴极限控制菜单项。
请注意
你的结果取决于随机的起始点,可能与描述的有所不同。
请注意,默认平滑参数生成的曲线比插值更平滑,但与数据非常吻合。在这种情况下,从默认值减少平滑参数将生成更平滑的曲线,但与数据不是很吻合。当平滑参数超过默认值时,相关的曲线将接近三次样条插值。三次样条和默认平滑样条对于内部点是相似的,但在端点是发散的。