您当前的位置: 首页 >  matlab

不牌不改

暂无认证

  • 0浏览

    0关注

    422博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Matlab】曲线拟合

不牌不改 发布时间:2022-06-25 09:58:18 ,浏览量:0

曲线拟合

插值与拟合的区别:

  1. 实现方法:插值要求曲线穿过样本点,而拟合不需要穿过样本点,只要求总体误差最小。
  2. 结果形式:插值是分段逼近样本点,没有同一的逼近函数;函数拟合则用一个函数去逼近,有完整的表达式。
  3. 侧重点:插值可以用于估计区间内某些点对应的函数值;拟合不仅可以估计区间内的点,也可以预测区间外的点。
  4. 应用场合:插值多用于精确数据集;拟合多用于统计数据集。

polyfit函数用于一元多次曲线拟合(亦多项式拟合),形如: y = a x 5 + b x 4 + c x 3 + d x 2 + e x + f y=ax^5+bx^4+cx^3+dx^2+ex+f y=ax5+bx4+cx3+dx2+ex+f,我们已知 x x x、 y y y样本数据,利用此函数求解参数(系数) a a a、 b b b、 c c c、 d d d、 e e e、 f f f。

regress函数用于一元或多元线性回归(拟合),形如: y = a x 1 + b x 2 + c x 3 + d x 4 + e y=ax_1+bx_2+cx_3+dx_4+e y=ax1​+bx2​+cx3​+dx4​+e,我们已知 x 1 x_1 x1​、 x 2 x_2 x2​、 x 3 x_3 x3​、 x 4 x_4 x4​、 y y y样本数据,利用此函数求解参数(系数) a a a、 b b b、 c c c、 d d d、 e e e。

polyfit函数

调用格式:

  • [P,S,mu]=polyfit(X,Y,m)

  • [P,S]=polyfit(X,Y,m)

  • P=polyfit(X,Y,m)

参数解释:

根据样本数据X和Y,产生一个m次多项式系数向量P及其在采样点误差数据S,mu是一个二元向量,mu(1)是mean(X),而mu(2)是std(X)。

x=0: 0.1: 1;
y=[-0.447, 1.978, 3.11, 5.25, 5.02, 4.66, 4.01, 4.58, 3.45, 5, 35];
p = polyfit(x, y, 3) % 三次多项式拟合
xx = 0: 0.01 : 1;
yy = polyval(p, xx) ; % 根据系数向量p计算在xx点处的函数值
plot(xx, yy, '-b', x, y, 'markersize', 20)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HfdDYeiK-1655004670298)(C:\Users\23343\AppData\Roaming\Typora\typora-user-images\image-20210905121325482.png)]

当还需要进行线性回归分析时,可以再利用corrcoef函数获取相关系数。

regress函数

在matlab的regress函数中置信区间bint、rint以及stats后面三个值全都为无穷大,这说明数据不服从线性关系,应考虑用非线性拟合函数来拟合。

调用格式:

  • [B,BINT,R,RINT,STATS] = regress(Y,X)
  • [B,BINT,R,RINT] = regress(Y,X)
  • [B,BINT,R] = regress(Y,X)
  • [B,BINT] = regress(Y,X)
  • B = regress(Y,X)

参数解释:

调用该函数要保证目标函数的形式已知,比如目标函数为: y = a x 1 + b x 2 + c x 3 + d x 4 + e y=ax_1+bx_2+cx_3+dx_4+e y=ax1​+bx2​+cx3​+dx4​+e,或者是 y = a x 1 2 + b x 2 2 + c x 1 + d x 2 + e x 1 × x 2 + f y = ax_1^2+bx_2^2+cx_1+dx_2+ex_1×x_2+f y=ax12​+bx22​+cx1​+dx2​+ex1​×x2​+f这样的多元多次多项式。传入参数,调用该函数后得到拟合出的系数值。

  • x是一个矩阵。矩阵的每一个样本,即行数等于样本数,每个样本的每一列表示该样本在多项式中每一项除去系数之外的值。
  • y是一个列向量。向量维度与矩阵行数一致,同为样本数,每一个值表示每个样本对应的函数值。

该函数根据多个样本的 x i x_i xi​和 y y y拟合出多项式的系数。

返回值解释:

  • B:回归系数,即未知参数,B(1)为常数项,B(2~……)依次为X每一列(从第二列起)对应的项的系数;
  • BINT:回归系数的置信区间。(置信区间:当给出某个估计值的95%置信区间为[a, b]时,可以理解为我们有95%的信心可以说样本的平均值介于a到b之间,而发生错误的概率为5%)
  • R:残差(残差是指观测值与预测值(拟合值)之间的差,即是实际观察值与回归估计值的差)
  • RINT:残差的置信区间。
  • STATS:用于检验回归模型的统计量。有4个数值:判定系数 R 2 R^2 R2(度量拟合优度的统计量,R²的值越接近1,说明回归直线对观测值的拟合程度越好), F F F统计量观测值,检验的 p p p的值( p < 0.05 p
关注
打赏
1662186765
查看更多评论
立即登录/注册

微信扫码登录

0.0436s