资源描述:
《matlab回归分析的技巧》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数学建模与数学实验回归分析俞辉三峡大学非线性与复杂系统研究所InstituteofNonlinear&ComplexSystemsEmail:yuhui@ctgu.edu.cn7/25/20211实验目的实验内容2、掌握用数学软件求解回归分析问题。1、直观了解回归分析基本内容。1、回归分析的基本理论。3、实验作业。2、用数学软件求解回归分析问题。7/25/20212一元线性回归多元线性回归回归分析数学模型及定义*模型参数估计*检验、预测与控制可线性化的一元非线性回归(曲线回归)数学模型及定义*模型
2、参数估计*多元线性回归中的检验与预测逐步回归分析7/25/20213一、数学模型例1测16名成年女子的身高与腿长所得数据如下:以身高x为横坐标,以腿长y为纵坐标将这些数据点(xI,yi)在平面直角坐标系上标出.散点图解答7/25/20214一元线性回归分析的主要任务是:返回7/25/20215二、模型参数估计1、回归系数的最小二乘估计7/25/20216其中7/25/20217返回7/25/20218三、检验、预测与控制1、回归方程的显著性检验7/25/20219(Ⅰ)F检验法(Ⅱ)t检验法7/2
3、5/202110(Ⅲ)r检验法记称为样本相关系数,用于刻画y与x线性相关的密切程度。7/25/2021112、回归系数的置信区间7/25/2021123、预测与控制(1)预测7/25/202113(2)控制返回7/25/202114四、可线性化的一元非线性回归(曲线回归)例2出钢时所用的盛钢水的钢包,由于钢水对耐火材料的侵蚀,容积不断增大.我们希望知道使用次数与增大的容积之间的关系.对一钢包作试验,测得的数据列于下表:解答7/25/202115散点图此即非线性回归或曲线回归问题(需要配曲线)配曲线
4、的一般方法是:7/25/202116通常选择的六类曲线如下:返回7/25/202117一、数学模型及定义返回7/25/202118二、模型参数估计解得估计值7/25/202119返回7/25/202120三、多元线性回归中的检验与预测(Ⅰ)F检验法(Ⅱ)r检验法(残差平方和)7/25/2021212、预测(1)点预测(2)区间预测返回7/25/202122四、逐步回归分析(4)“有进有出”的逐步回归分析。(1)从所有可能的因子(变量)组合的回归方程中选择最优者;(2)从包含全部变量的回归方程中逐次
5、剔除不显著因子;(3)从一个变量开始,把变量逐个引入方程;选择“最优”的回归方程有以下几种方法:“最优”的回归方程就是包含所有对Y有影响的变量,而不包含对Y影响不显著的变量回归方程。以第四种方法,即逐步回归分析法在筛选变量方面较为理想.7/25/202123这个过程反复进行,直至既无不显著的变量从回归方程中剔除,又无显著变量可引入回归方程时为止。逐步回归分析法的思想:从一个自变量开始,视自变量x作用的显著程度,从大到小地依次逐个引入回归方程。当引入的自变量由于后面变量的引入而变得不显著时,要将其剔
6、除掉。引入一个自变量或从回归方程中剔除一个自变量,为逐步回归的一步。对于每一步都要进行Y值检验,以确保每次引入新的显著性变量前回归方程中只包含对Y作用显著的变量。返回7/25/202124统计工具箱中的回归分析命令1、多元线性回归2、多项式回归3、非线性回归4、逐步回归返回7/25/202125多元线性回归b=regress(Y,X)1、确定回归系数的点估计值:7/25/2021263、画出残差及其置信区间:rcoplot(r,rint)2、求回归系数的点估计和区间估计、并检验回归模型:[b,bi
7、nt,r,rint,stats]=regress(Y,X,alpha)回归系数的区间估计残差用于检验回归模型的统计量,有三个数值:相关系数r2、F值、与F对应的概率p置信区间显著性水平(缺省时为0.05)7/25/202127例1解:1、输入数据:x=[143145146147149150153154155156157158159160162164]';X=[ones(16,1)x];Y=[8885889192939395969897969899100102]';2、回归分析及检验:[b,bint
8、,r,rint,stats]=regress(Y,X)b,bint,statsToMATLAB(liti11)题目7/25/2021283、残差分析,作残差图:rcoplot(r,rint)从残差图可以看出,除第二个数据外,其余数据的残差离零点均较近,且残差的置信区间均包含零点,这说明回归模型y=-16.073+0.7194x能较好的符合原始数据,而第二个数据可视为异常点.4、预测及作图:z=b(1)+b(2)*xplot(x,Y,'k+',x,z,'r')返回ToMATLAB(l