matlab中多项式拟合时的阶次问题

1.在Matlab中是不是最高次的系数不能为零?也就是说用polyfit(x,y,10),那么10次方前面的系数不为零?
2.这么说来阶次越高拟合的不一定越准确?
3.如何选择最优的拟合阶次?
4.换个说法,多项式拟合用K阶和K+1阶,后者是在前者基础上的稍微修正还是所有的系数都要重新计算?这里面高阶系数是主要还是低阶系数其主导作用?

第1个回答  2011-09-29
year=[1640 ,1650 ,1660 ,1670,1680,1690,1700,1710,1720,1730,1740,1750,1760,1770,1780,1790,1800,1810,1820,1830,1840,1850,1860,1870,1880,1890,1900]; dis=[1,0,2,1,2,2,2,4,6,3,6,5,8,9,6,5,5,6,5,10,9,8,8,7,2,7,7]; p=polyfit(year,dis,6) pyear=linspace(min(year),max(year),100); fitval=polyval(p,pyear); plot(year,dis,'*',pyear,fitval) %点为数据点,线为拟合线到网上百度一下。不错,2011/9/29 17:59:36
第2个回答  2011-09-29
最高次的系数不能为零
低阶系数