回 帖 发 新 帖 刷新版面

主题:求助-二次多项式拟合

x: 0.1   0.2  0.3  0.4  0.5  0.6  0.7  0.8  0.9  1
  y: 1.98  3.28 6.16 7.34 7.66 9.58 9.56 9.48 9.30 11.2
 分别用解超定方程和多项式拟合命令进行求解~!!!!  
    各位大虾门 俺的幸福交到你们的手里了!

回复列表 (共12个回复)

沙发

x=[0.1   0.2  0.3  0.4  0.5  0.6  0.7  0.8  0.9  1]'
y=[1.98  3.28 6.16 7.34 7.66 9.58 9.56 9.48 9.30 11.2]'
二次多项式拟合:polyfit(x,y,2)  %返回的是多项式系数,按降幂排列

解超定方程:y=a1x1^2+a2x1+a3 <==>AX=B
           A=[x.^2  x ones(length(x),1)]
           X=[a1;a2;a3]
           B=y
==>X=(A'A)^(-1)(A'B)
   inv(A'*A)*(A'*B)  OR  (A'*A)\(A'*B)

板凳

线性回归也行:regress

3 楼

Thank you!

4 楼

用二次多项式拟合显然不合适!

5 楼

接超定的实在看不懂 给个详细的行不.给满分啊--今天才发现有这么个东东

6 楼

functon 1
yhat=(b(1)+b(2)*x)./(1+b(3)*x+b(4)*x.^2+b(5)*x.^3);
SSy=79.5168
B=[.8153935968,  6.253040638, -3.126537247,  5.449156524, -2.676545754]
RSS=2.034320826
MSe=0.5086
R2=.974416

function 2
yhat=(b(1)+b(2)*x+b(3)*x.^2+b(4)*x.^3)./(1+b(5)*x+b(6)*x.^2);
B=[-.3630572597,  23.23232145, -41.75448473,  19.32661785, -1.492142780,  .5315516720]
RSS=1.298111326
MSe=0.3245
R2=.983675
似以function 2拟合得更好一些。你可以上述模型及初值用lsqcurvefit 或 nlinfit 验证。

7 楼

大哥大姐们~ 做不出来没学过matlab啊!
  给啊具体行不![em21] 用解超定方程的方法求解!~ 给我传个编好的文件也行啊~!
  hughth45@163.com              谢谢哦

8 楼

解超定的给个详细的行不? 一点都不会!
  x: 0.1   0.2  0.3  0.4  0.5  0.6  0.7  0.8  0.9  1
  y: 1.98  3.28 6.16 7.34 7.66 9.58 9.56 9.48 9.30 11.2

用解超定方程的方法求解!!!!!!!!!!!!!!!!!!!!!!!11

9 楼

很抱歉,我都不知道何为超定方程,若你能提供方程的形式,可进行试拟合。

10 楼

a

我来回复

您尚未登录,请登录后再回复。点此登录或注册