逐步回归分析_第1页
逐步回归分析_第2页
逐步回归分析_第3页
逐步回归分析_第4页
逐步回归分析_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

回归分析MATLAB工具箱一、多元线性回归多元线性回归:y=P+PX+•••+PX0 11 pp1、确定回归系数的点估计值:命令为:b=regress(YX)①b表示b=Y1Y②Y表示Y=2LY」n二\o"CurrentDocument"X ... X12 1pX ... X\o"CurrentDocument"X ... X12 1pX ... X22 2p111X③X表示X= 211X1Xn1X...Xn2 np2、求回归系数的点估计和区间估计、并检验回归模型:命令为:[b,bint,r,rint,stats]=regress(YX,alpha)bint表示回归系数的区间估计.r表示残差.rint表示置信区间.stats表示用于检验回归模型的统计量,有三个数值:相关系数r2、F值、与F对应的概率p.说明:相关系数r2越接近1,说明回归方程越显著;F>膈(k,n-k-1)时拒绝H0,F越大,说明回归方程越显著;与F对应的概率p<a时拒绝H0,回归模型成立.⑤alpha表示显著性水平(缺省时为0.05)3、画出残差及其置信区间.命令为:rcoplot(r,rint)例1.如下程序.解:(1)输入数据.x=[143145146147149150153154155156157158159160162164]';X=[ones(16,1)x];Y=[8885889192939395969897969899100102]';(2)回归分析及检验.[b,bint,r,rint,stats]=regress(YX)b,bint,stats得结果:b= bint=

-16.07300.7194-16.07300.71940.6047 0.8340stats=0.9282180.9531 0.0000即B0=-16.073,可=0.7194;&0的置信区间为[-33.7017,1.5612],幻的置信区间为[0.6047,0.834];r2=0.9282,F=180.9531,p=0.0000,我们知道p<0.05就符合条件,可知回归模型y=-16.073+0.7194x成立.(3)残差分析,作残差图.rcoplot(r,rint)ResidualCaseOrderPlot4 6 8 10 12 14 16CaseNumber432O2345----slaudlspRResidualCaseOrderPlot4 6 8 10 12 14 16CaseNumber432O2345----slaudlspR从残差图可以看出,除第二个数据外,其余数据的残差离零点均较近,且残差的置信区间均包含零点,这说明回归模型y=-16.073+0.7194x能较好的符合原始数据,而第二个数据可视为异常点.(4)预测及作图.z=b(1)+b(2)*xplot(x,Y,'k+',x,z,'r')二、多项式回归(一)一元多项式回归.1、 一元多项式回归:y=ax+ax+...+ax+a1m2m-1 m m+1确定多项式系数的命令:[p,S]=polyfit(x,y,m)说明:x=(x1,x2,...,xn),y=(y1,y2,...,yn);p=(a1,a2,_,am+1)是多项式y=a1xm+a2xm-1+...+amx+am+1的系数;S是一个矩阵,用来估计预测误差.一元多项式回归命令:polytool(x,y,m)2、 预测和预测误差估计.Y=polyval(p,x)求polyfit所得的回归多项式在x处的预测值Y;[Y,DELTA]=polyconf(p,x,S,alpha求polyfit所得的回归多项式在x处的预测值Y及预测值的显著性为1-alpha的置信区间Y±DELTAalpha缺省时为0.5.例1.观测物体降落的距离s与时间t的关系,得到数据如下表,求s.(关于t的回归方程S=a+bt+ct2)t(s)1/302/303/304/305/306/307/30s(cm)11.8615.6720.6026.6933.7141.9351.13t(s)8/309/3010/3011/3012/3013/3014/30s(cm)61.4972.9085.4499.08113.77129.54146.48解法一:直接作二次多项式回归.t=1/30:1/30:14/30;s=[11.8615.6720.6026.6933.7141.9351.1361.4972.9085.4499.08113.77129.54146.48];[p,S]=polyfit(t,s,2)得回归模型为:s=489.2946t2+65.8896t+9.1329解法二:化为多元线性回归.t=1/30:1/30:14/30;s=[11.8615.6720.6026.6933.7141.9351.1361.4972.9085.4499.08113.77129.54146.48];T=[ones(14,1)t'(t.A2)'];[b,bint,r,rint,stats]=regress(s',T);b,stats得回归模型为:S=9.1329+65.8896t+489.2946t2预测及作图:Y=polyconf(p,t,S)plot(t,s,'k+',t,Y,'r')(二)多元二项式回归多元二项式回归命令:rstool(x,y,’model’,alpha)说明:x表示nxm矩阵;Y表示n维列向量;alpha:显著性水平(缺省时为0.05);model表示由下列4个模型中选择1个(用字符串输入,缺省时为线性模型):linear(线性):y=P+P工+ P工0 11 mmpurequadratic(纯二次):y=P+Px+ Px+▼Px20 11 mm jjjj=1interaction(交叉):y=p+px+ px+乙pxx0 11 mm jkjk1<j#k<m^quadratic(完全二次):y=p+px+ px+乙。xx0 11 mm jkjk1<j,k<m例1.设某商品的需求量与消费者的平均收入、商品价格的统计数据如下,建立回归模型,预测平均收入为1000、价格为6时的商品需求量.需求量10075807050659010011060收入10006001200500300400130011001300300价格5766875439

解法一:选择纯二次模型,即y=p+px+px+p若+px2.0 "11 '22 "111 '222直接用多元二项式回归:x1=[10006001200500300400130011001300300];x2=[5766875439];y=[10075807050659010011060]';x=[x1'x2'];rstool(x,y,'purequadratic')在左边图形下方的方框中输入1000rstool(x,y,'purequadratic')在左边图形下方的方框中输入1000,右边图形下方的方框中输入6,则画面左边的“PredictedY”下方的数据变为88.47981,即预测出平均收入为1000、价格为6时的商品需求量为88.4791.在画面左下方的下拉式菜单中选"all",则beta、rmse和residuals都传送至UMatlab工作区中.在Matlab工作区中输入命令:beta,rmse得结果:beta=110.53130.1464-26.5709-0.00011.8475rmse=4.5362故回归模型为:y=110.5313+0.1464x1-26.5709x2-0.0001x2+1.8475x2剩余标准差为4.5362,说明此回归模型的显著性较好.解法二:将y=P+Px+Px+Px2+Px2化为多元线性回归:0 11 22 111 222X=[ones(10,1)x1'x2'(x1.A2)'(x2.A2)'];[b,bint,r,rint,stats]=regress(y,X);b,stats结果为:b=110.53130.1464-26.5709-0.00011.8475stats=40.6656 0.00050.970240.6656 0.0005三、非线性回归1、 非线性回归:确定回归系数的命令:[beta,r,J]=nlinfit(x,y,'model’,beta0)说明:beta表示估计出的回归系数;r表示残差;J表示Jacobian矩阵;x,y表示输入数据x、y分别为矩阵和n维列向量,对一元非线性回归,x为n维列向量;model表示是事先用m-文件定义的非线性函数;beta0表示回归系数的初值.非线性回归命令:nlintool(x,y,'model',beta0,alpha)2、 预测和预测误差估计:[Y,DELTA]=nlpredci(model',x,beta,r,J)表示nlinfit或nlintool所得的回归函数在x处的预测值Y及预测值的显著性为1-alpha的置信区间Y±DELTA.例1.如下程序.解:(1)对将要拟合的非线性模型y=aeb/x,建立m-文件volum.m如下:functionyhat=volum(beta,x)yhat=beta(1)*exp(beta(2)./x);输入数据:x=2:16;y=[6.428.209.589.59.7109.939.9910.4910.5910.6010.8010.6010.9010.76];beta0=[82]';求回归系数:[beta,r,J]=nlinfit(x',y','volum',beta0);beta运行结果:beta=11.6036-1.0641即得回归模型为:1.10641y=11.6036e-x(5)预测及作图:[YY,delta]=nlpredci('volum',x',beta,r,J);plot(x,y,'k+',x,YY,'r')四、逐步回归1、 逐步回归的命令:stepwise(x,y,inmodel,alpha)说明:x表示自变量数据,nxm阶矩阵;y表示因变量数据,nx1阶矩阵;inmodel表示矩阵的列数的指标,给出初始模型中包括的子集(缺省时设定为全部自变量);alpha表示显著性水平(缺省时为0.5).2、 运行stepwise命令时产生三个图形窗口:StepwisePlot,StepwiseTable,StepwiseHistory.在StepwisePlot窗口,显示出各项的回归系数及其置信区间.⑴StepwiseTable窗口中列出了一个统计表,包括回归系数及其置信区间,以及模型的统计量剩余标准差(RMSE)、相关系数(R-square)、F值、与F对应的概率P.例1.水泥凝固时放出的热量y与水泥中4种化学成分x1、x2、x3、x4有关,今测得一组数据如下,试用逐步回归法确定一个线性模型.12345678910111213

序号x17111117113122111110x226295631525571315447406668x3615886917221842398x46052204733226442226341212y78.574.3104.387.695.9109.2102.772.593.1115.983.8113.3109.4解:(1)数据输入:x1=[7111117113122111110]';x2=[26295631525571315447406668]';x3=[615886917221842398]';x4=[6052204733226442226341212]';y=[78.574.3104.387.695.9109.2102.772.593.1115.983.8113.3109.4]';x=[x1x2x3x4];(2)逐步回归.①先在初始模型中取全部自变量:stepwise(x,y)得图StepwisePlot和表StepwiseTable.l-l'llcfLEn.Ll-r--Iml'llHI'llFll-FI①先在初始模型中取全部自变量:stepwise(x,y)得图StepwisePlot和表Stepwise

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论