MATLAB基础与应用
上QQ阅读APP看书,第一时间看更新

2.5 多项式回归

多项式的回归就是将两组数据用多项式曲线进行拟合,其程序为:

978-7-111-45813-5-Chapter02-70.jpg

978-7-111-45813-5-Chapter02-71.jpg;%输入x和y的数据

978-7-111-45813-5-Chapter02-72.jpg %n为多项式的次数

例2.11:某公司2009年前6个月的销售收入R(万元)(见表2-4),根据该表的数据,在Excel中发现,该数据的走势大体接近三次函数,请用MATLAB拟合得出该曲线,其中,t=0对应1月。假若这个趋势继续下去,问2009年11月该公司的销售收入是多少?

表 2-4

978-7-111-45813-5-Chapter02-73.jpg

解:曲线的拟合程序如下:

978-7-111-45813-5-Chapter02-74.jpg

978-7-111-45813-5-Chapter02-75.jpg

所以,Rt)=-0.2065t3+2.9861t2-0.6963t+33.1444 11月销售收入实际上对应的是t=10时函数的值。

R(10)=-0.2065×103+2.9861×102-0.6963×10+33.1444=118(万元)

例2.12:表2-5所列数据是某公司网上电子商务每年收入(单位:百万元)。试利用MATLAB建立一个3次多项式回归模型y=yt),使t=0对应1997,在[0,4]×[0,20]范围内作出y=yt)的图形,并计算t=0,1,2,3,4时收入y=yt)的值。

表 2-5

978-7-111-45813-5-Chapter02-76.jpg

解:(1)首先对数据进行拟合,MATLAB程序为:

978-7-111-45813-5-Chapter02-77.jpg

(2)在指定区域作出图像,在MATLAB窗口输入如下命令:

978-7-111-45813-5-Chapter02-78.jpg

于是,得到如图2-10所示的回归模型图像。

978-7-111-45813-5-Chapter02-79.jpg

图 2-10

(3)回归验证模型,在MATLAB窗口输入如下命令:

978-7-111-45813-5-Chapter02-80.jpg