《多元回归程序MATLAB程序(共18页).doc》由会员分享,可在线阅读,更多相关《多元回归程序MATLAB程序(共18页).doc(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上matlab回归(拟合)总结前言1、学三条命令polyfit(x,y,n)-拟合成一元幂函数(一元多次)regress(y,x)-可以多元, nlinfit(x,y,fun,beta0) (可用于任何类型的函数,任意多元函数,应用范围最广,最万能的)2、同一个问题,这三条命令都可以使用,但结果肯定是不同的,因为拟合的近似结果,没有唯一的标准的答案。相当于咨询多个专家。3、回归的操作步骤:根据图形(实际点),选配一条恰当的函数形式(类型)-需要数学理论与基础和经验。(并写出该函数表达式的一般形式,含待定系数)-选用某条回归命令求出所有的待定系数。所以可以说,回归就是求待
2、定系数的过程(需确定函数的形式)一、多元回归分析对于多元线性回归模型(其实可以是非线性,它通用性极高):设变量的n组观测值为记 ,则 的估计值为排列方式与线性代数中的线性方程组相同(),拟合成多元函数-regress使用格式:左边用b=b, bint, r, rint, stats右边用=regress(y, x)或regress(y, x, alpha)-命令中是先y后x, -须构造好矩阵x(x中的每列与目标函数的一项对应)-并且x要在最前面额外添加全1列/对应于常数项-y必须是列向量-结果是从常数项开始-与polyfit的不同。)其中: b为回归系数,的估计值(第一个为常数项),bint为
3、回归系数的区间估计,r: 残差 ,rint: 残差的置信区间,stats: 用于检验回归模型的统计量,有四个数值:相关系数r2、F值、与F对应的概率p和残差的方差(前两个越大越好,后两个越小越好),alpha: 显著性水平(缺省时为0.05,即置信水平为95%),(alpha不影响b,只影响bint(区间估计)。它越小,即置信度越高,则bint范围越大。显著水平越高,则区间就越小)(返回五个结果)-如有n个自变量-有误(n个待定系数),则b 中就有n+1个系数(含常数项,-第一项为常数项)(b-b的范围/置信区间-残差r-r的置信区间rint-点估计-区间估计 如果的置信区间(bint的第行)
4、不包含0,则在显著水平为时拒绝的假设,认为变量是显著的*(而rint残差的区间应包含0则更好)。b,y等均为列向量,x为矩阵(表示了一组实际的数据)必须在x第一列添加一个全1列。-对应于常数项。相关系数r2越接近1,说明回归方程越显著;(r2越大越接近1越好)F越大,说明回归方程越显著;(F越大越好)与F对应的概率p越小越好,一定要Pa时拒绝H0而接受H1,即回归模型成立。乘余(残差)标准差(RMSE)越小越好(此处是残差的方差,还没有开方)(前两个越大越好,后两个越小越好)重点:regress(y,x) 重点与难点是如何加工处理矩阵x。 y是函数值,一定是只有一列。也即目标函数的形式是由矩阵
5、X来确定如s=a+b*x1+c*x2+d*x3+e*x12+f*x2*x3+g*x12,一定有一个常数项,且必须放在最前面(即x的第一列为全1列)X中的每一列对应于目标函数中的一项(目标函数有多少项则x中就有多少列)X=ones, x1, x2, x3, x1.2, x2.*x3,x1.2 (剔除待定系数的形式)regress: y/x顺序,矩阵X需要加工处理nlinfit: x/y顺序,X/Y就是原始的数据,不要做任何的加工。(即regress靠矩阵X来确定目标函数的类型形式(所以X很复杂,要作很多处理) 而nlinfit是靠程序来确定目标函数的类型形式(所以X就是原始数据,不要做任何处理)
6、例1 测16名成年女子的身高与腿长所得数据如下:身高143145146147149150153154155156157158159160162164腿长8885889192939395969897969899100102配成y=a+b*x形式 x=143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164; y=88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102; plot(x,y,r+)z=x;x=ones(16,1),x;-常数项b,bint,r,rint,stats=reg
7、ress(y,x);-处结果与polyfit(x,y,1)相同b,bint,stats得结果:b = bint = -16.0730 -33.7071 1.5612-每一行为一个区间 0.7194 0.6047 0.8340stats = 0.9282 180.9531 0.0000即;的置信区间为-33.7017,1.5612, 的置信区间为0.6047,0.834; r2=0.9282, F=180.9531, p=0.0。p clear x=xlsread(cz.xls); %已经把所有的有效数据拷入到cd.xls文件中去了。 y=x(:,7); x(:,7)= ; z=ones(30,
8、1); x=z,x; b,bint,r,rint,states=regress(y,x); b,statesb = 159.1440 0.4585 -0.0112 -0.5125 0.0008 -0.0028 0.3165stats = 1.0e+003 * 0.0010 0.2283 0 1.0488四、非线性回归或曲线回归问题配曲线的一般方法是:(一)先对两个变量x和y 作n次试验观察得画出散点图,散点图(二)根据散点图确定须配曲线的类型.通常选择的六类曲线如下:(1)双曲线 (2)幂函数曲线y=a, 其中x0,a0(3)指数曲线y=a其中参数a0.(4)倒指数曲线y=a其中a0,(5)对数曲线y=a+blogx,x0(6)S型曲线(三)然后由n对试验数据确定每一类曲线的未知参数a和b.解例2.由散点图我们选配倒指数曲线y=a根据线性化方法,算得由此 最后得 专心-专注-专业