作业帮 > 综合 > 作业

用matlab一元线性函数拟合下列数据,谢谢.要过程.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/09 19:12:04
用matlab一元线性函数拟合下列数据,谢谢.要过程.
2000124.92
2001132.04
2002139.45
2003150.93
2004165.13
2005181.93
2006196.83
2007212.38
2008228.07
2009241.45
2010251.03
x=2000:2010;
y=[124.92 132.04 139.45 150.93 165.13 181.93 196.83 212.38 228.07 241.45 251.03];
plot(x,y,'g*');
hold on
b=polyfit(x,y,2);%进行2次拟合,b是多项式前面的值.就如2次拟合中y=ax+b,a,b的值.
yy=polyval(b,x);%得到拟合后y的新值
plot(x,yy,'r-')%画拟合图
再问: 请问怎么得出函数式?还有matlab可以输入中文?
再答: 你运行之后查看b的值就可以了,它的第一个值就是y=ax+b中a的值,第二个就是b的值了,至于为什么可以输入中文,是因为那些中文只是拿来注释的,前面有%,不然是不能用中文的。
再问: 假如进行一次拟合的话,是不是就是线性回归了?请问下怎么计算拟合的好不好?
再答: 恩 是线性回归 因为y和x成线性关系嘛 拟合结果你可以看拟合出来的图,看看效果怎么样。
再问: 可以用最小二乘法?怎么编写函数?
再答: 这个程序的原理就是最小二乘法,呵呵