当前位置:文档之家› 第八章--统计回归模型

第八章--统计回归模型

第八章 统计回归模型回归分析是研究一个变量Y 与其它若干变量X 之间相关关系的一种数学工具.它是在一组试验或观测数据的基础上,寻找被随机性掩盖了的变量之间的依存关系.粗略的讲,可以理解为用一种确定的函数关系去近似代替比较复杂的相关关系.这个函数称为回归函数.回归分析所研究的主要问题是如何利用变量X 、Y 的观察值(样本),对回归函数进行统计推断,包括对它进行估计及检验与它有关的假设等.回归分析包含的内容广泛.此处将讨论多项式回归、多元线性回归、非线性回归以及逐步回归.一、多项式回归(1) 一元多项式回归一元多项式回归模型的一般形式为εβββ++++=mm x x y ...10.如果从数据的散点图上发现y 与x 呈现较明显的二次(或高次)函数关系,则可以选用一元多项式回归.1. 用函数polyfit 估计模型参数,其具体调用格式如下:p=polyfit(x,y,m) p 返回多项式系数的估计值;m 设定多项式的最高次数;x ,y 为对应数据点值. [p,S]=polyfit(x,y,m) S 是一个矩阵,用来估计预测误差.2. 输出预估值与残差的计算用函数polyval 实现,其具体调用格式如下: Y=polyval(p,X) 求polyfit 所得的回归多项式在X 处的预测值Y .[Y ,DELTA]=polyval(p,X,S) p ,S 为polyfit 的输出,DELTA 为误差估计.在线性回归模型中,Y ±DELTA 以50%的概率包含函数在X 处的真值.3. 模型预测的置信区间用polyconf 实现,其具体调用格式如下:[Y ,DELTA]=polyconf(p,X,S,alpha) 求polyfit 所得的回归多项式在X 处的预测值Y 及预测值的显著性为1-alpha 的置信区间Y±DELTA ,alpha 缺省时为0.05.4. 交互式画图工具polytool ,其具体调用格式如下: polytool(x,y,m); polytool(x,y,m,alpha);用m 次多项式拟合x ,y 的值,默认值为1,alpha 为显著性水平,默认值为0.05. 例1 观测物体降落的距离s 与时间t 的关系,得到数据如下表,求s .解 根据数据的散点图,应拟合为一条二次曲线.选用二次模型,具体代码如下: %%%输入数据t=1/30:1/30:14/30;s=[11.86 15.67 20.60 26.69 33.71 41.93 51.13 61.49 72.90 85.44 99.08 113.77 129.54 146.48]; %%%多项式系数拟合 [p,S]=polyfit(t,s,2); 则得回归模型为:1329.98896.652946.489ˆ2++=t t s. %%%y 的拟合值及预测值y 的置信半径delta [y,dalta]=polyconf(p,t,S); 得结果如下: y=Columns 1 through 1111.8729 15.7002 20.6148 26.6168 33.7060 41.8826 51.1465 61.4978 72.9363 85.4622 99.0754 Columns 12 through 14 113.7759 129.5637 146.4389 dalta=Columns 1 through 110.0937 0.0865 0.0829 0.0816 0.0817 0.0823 0.0827 0.0827 0.0823 0.0817 0.0816 Columns 12 through 14 0.0829 0.0865 0.0937 %%%交互式画图 polytool(t,s,2);polytool 所得的交互式图形如图8-1所示.图8-1(2) 多元二项式回归多元二项式回归模型的一般形式为εββββ∑≤≤+++++=mk j k j jkm m x x x x y ,1110....多元二项式回归命令:rstool(x,y,’model’,alpha) x 表示n ⨯m 矩阵;y 表示n 维列向量;alpha 为显著性水平(缺省时为0.05);model 表示由下列4个模型中选择1个(用字符串输入,缺省时为线性模型):linear(线性):m m x x y βββ+++=Λ110;purequadratic(纯二次):∑=++++=nj j jjm m x x x y 12110ββββΛ;interaction(交叉):∑≤≠≤++++=mk j k j jkm m x x x x y 1110ββββΛ;quadratic(完全二次):∑≤≤++++=mk j k j jkm m x x x x y ,1110ββββΛ.例2 设某商品的需求量与消费者的平均收入、商品价格的统计数据如下,建立回归模型,预测平均收入为1000、价格为6时的商品需求量.需求量 100 758070 50 65 90 100 110 60 收入 1000 600 1200 500 300 400 1300 1100 1300 300 价格 5 766875439解 选择纯二次模型,即2222211122110x x x x y βββββ++++=.%%%输入数据x1=[1000 600 1200 500 300 400 1300 1100 1300 300]; x2=[5 7 6 6 8 7 5 4 3 9]; x=[x1' x2'];y=[100 75 80 70 50 65 90 100 110 60]'; %%%多元二项式回归 rstool(x,y,'purequadratic'); 得如下结果:图8-2得到一个如图所示的交互式画面,左边是x1(=1000)固定时的曲线y (x1)及其置信区间,右边是x2(=6)固定时的曲线y (x2)及其置信区间.用鼠标移动图中的十字线,或在图下方窗口内输入,可改变x1,x2.在左边图形下方的方框中输入1000,右边图形下方的方框中输入6,则画面左边的“Predicted Y1”下方的数据变为88.4791,即预测出平均收入为1000、价格为6时的商品需求量为88.4791.在画面左下方单击”Export ”,在出现的窗体中单击”ok ”按钮,则beta 、rmse 和residuals 都传送到Matlab 工作区中.在Matlab 工作区中输入命令:beta,rmse ,得结果: beta=110.5313 0.1464 -26.5709 -0.0001 1.8475rmse =4.5362故回归模型为:2221218475.10001.05709.261464.05313.110x x x x y +--+=,剩余标准差为4.5362,说明此回归模型的显著性较好.二、多元线性回归多元线性回归模型的一般形式为011...m m y x x βββε=++++.在Matlab 统计工具箱中使用函数regress 实现多元线性回归.具体调用格式为: b=regress(Y,X)[b,bint,r,rint,stats]=regress(Y,X,alpha)其中⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=n Y Y Y Y ...21,⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=nm n n m m x x x x x x x x x X ...1..................1 (12)12222111211.对于一元线性回归,取1=m 即可.b 为输出向量;b ,bint 表示回归系数估计值和它们的置信区间;r 表示残差;rint 表示残差的置信区间;stats 表示用于检验回归模型的统计量,有四个数值:相关系数2R 、F 值、与F 值对应的概率P 、2s 的值.相关系数2R 越接近1,说明回归方程越显著;)1,(1-->-m n m F F α时拒绝0H ,F 越大,说明回归方程越显著;与F 对应的概率α<P 时拒绝0H ,回归模型成立;alpha 表示显著性水平(缺省时为0.05).残差及其置信区间可以用命令rcoplot(r,rint)画出.例3 已知某湖泊八年来湖水中COD 浓度实测值(y )与影响因素,如湖区工业产值(x 1)、总人口数(x 2)、捕鱼量(x 3)、降水量(x 4)的资料,建立y 的水质分析模型.湖水浓度与影响因素数据表解 作出因变量y 与各自变量的样本散点图作散点图的目的主要是观察因变量y与各自变量间是否有比较好的线性关系,以便选择恰当的数学模型形式.图8-3、图8-4、图8-5、图8-6分别为y与x1、x2、x3、x4的散点图.从图中可以看出这些点大致分布在一条直线旁边,因此有较好的线性关系,可以采用线性回归.图8-3 y与x1的散点图图8-4 y与x2的散点图图8-5 y与x3的散点图图8-6 y与x4的散点图在Matlab中实现回归的具体代码如下:%%%输入数据x1=[1.376 1.375 1.387 1.401 1.412 1.428 1.445 1.477];x2=[0.450 0.475 0.485 0.500 0.535 0.545 0.550 0.575];x3=[2.170 2.554 2.676 2.713 2.823 3.088 3.122 3.262];x4=[0.8922 1.1610 0.5346 0.9589 1.0239 1.0499 1.1065 1.1387];x=[ones(8,1) x1' x2' x3' x4'];y=[5.19 5.30 5.60 5.82 6.00 6.06 6.45 6.95];%%%多元线性回归[b,bint,r,rint,stats]=regress(y',x);得如下结果:b =-13.984913.19202.42280.0754 -0.1897 bint =-26.0019 -1.9679 1.4130 24.9711 -14.2808 19.1264 -1.4859 1.6366 -0.9638 0.5844 r =-0.0618 0.0228 0.0123 0.0890 0.0431 -0.1473 0.0145 0.0274 rint =-0.1130 -0.0107 -0.1641 0.2098 -0.1051 0.1297 -0.2542 0.4321 -0.0292 0.1153 -0.2860 -0.0085 -0.3478 0.3769 -0.1938 0.2486 stats =0.9846 47.9654 0.0047 0.0123故回归模型为:43211897.00754.04228.21920.139849.13x x x x y -+++-=, 此外,由stats 的值可知9846.02=R ,9654.47=F ,0047.0=P 。

相关主题