怎样用matlab作数据的最小二乘拟合?

如题所述

用polyfit()语句可以,


polyfit(x,y,拟合次数n);


x,y是你的数据,n是你要进行几次拟合,填1的话为一次也就是最小二乘法拟合


你可以这样写


x=[ 0.25 0.5 0.75 1 1.5 2 2.5 3 3.5 4 4.5 5 6 7 8 9 10 11 12 13 14 15 16];


y=[30 68 75 82 82 77 68 68 58 51 50 41 38 35 28 25 18 15 12 10 7 7 4];


p=polyfit(x,y,1);


plot(x,y,'b',x,polyval(p,x),'r');  %如果作图的话,蓝线为原数据,红线为拟合数据。

先画散点图大致确定曲线类型。然后用polyfit,polyval函数(这两个是多项式拟合的),比如指数型,取对数就可以用。函数用法百度下就好。

温馨提示:答案为网友推荐,仅供参考