Matlab 解决人口数据的拟合,推算该地2019年的人口数量。

1999 5707800
2000 5776000
2001 5829000
2002 5877000
2003 5930800
2004 5996202
2005 6045168
2006 6099394
2007 6171734
2008 6260533
2009 6351871

clear
x=[];y=[];
x=[1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009];
y=[5707800 5776000 5829000 5877000 5930800 5996202 6045168 6099394 6171734 6260533 6351871];
>> p=polyfit(x,y,1);
>> %拟合直线,作图
>> for i=2010:2019
x=[x i];
y=[y polyval(p,i)];
end;
>> plot(x,y);
>> %显示2019人口数
>> polyval(p,2019)

估计为692400人
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-24
year=[1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009];
people=[5707800 5776000 5829000 5877000 5930800 5996202 6045168 6099394 6171734 6260533 6351871];
C=polyfit(year,people,3);%三阶多项式拟合
plot(year,people,year,polyval(C,year))

people2019=polyval(C,2019)