多元回归函数regress的用法

来源:互联网 发布:51单片机手动复位电路 编辑:程序博客网 时间:2024/05/21 06:42

在回归分析中,如果有两个或两个以上的自变量,就称为多元回归。事实上,一种现象常常是与多个因素相联系的,由多个自变量的最优组合共同来预测或估计因变量,比只用一个自变量进行预测或估计更有效,更符合实际。因此多元线性回归比一元线性回归的实用意义更大。

regress用于一元及多元线性回归,本质上是最小二乘法。

[b,bint,r,rint,stats] = regress(Y,X)

[b,bint,r,rint,stats]=regress(Y,X,alpha)

bint是回归系数的区间估计,r是残差,rint是置信区间,stats是用于检验回归模型的统计量,有三个数值:相关系数r^2,F值,与F对应的概率P,alpha是显著性水平(缺省的时候为0.05)。相关系数r^2越大,说明回归方程越显著;与F对应的概率P..

regress函数不仅可以做一元线性回归、多元线性回归,还可以做特定形式的一元、多元非线性回归,具体见示例3.


示例1:Y=a*X1+b*X2型

clear all;close all;clc;X1=[5 14 25 32 52 74 96 101 123 154 173 197 215 235];X2=[12 23 34 45 56 67 78 89 100 111 123 134 145 156];Y=(1:14);X=[X1' X2'];[b,bint,r,rint,stats]=regress(Y',X);



运行结果:

b =


    0.0009
    0.0885




stats =


  1.0e+005 *


    0.0000    1.7483         0    0.0000


示例2:Y=a+b*X1+c*X2型

clear all;close all;clc;X1=[5 14 25 32 52 74 96 101 123 154 173 197 215 235];X2=[12 23 34 45 56 67 78 89 100 111 123 134 145 156];Y=(1:14);X=[ones(length(Y),1) X1' X2'];[b,bint,r,rint,stats]=regress(Y',X);

运行结果:

b =


   -0.1160
   -0.0018
    0.0932




stats =


  1.0e+005 *


    0.0000    2.3275         0    0.0000


示例3:Y=b0+b1*X1+b2*X2+b3*X3+b4*X1*X3+b5*X2*X3+b6*X1*X1+b7*X2*X2+b8*X*X3

x1=[4.7 4.7 4.7 4.7 2.9 2.9 2.9 2.9 5.3 2.3 3.8 3.8 3.8 3.8 3.8 3.8 3.8 3.8 3.8 3.8];x2=[91 91 79 79 91 91 79 79 85 85 95 75 85 85 85 85 85 85 85 85];x3=[68 32 68 32 68 32 68 32 50 50 50 50 80 20 50 50 50 50 50 50];y=[1.73 1.36 1.22 1.09 2.65 2.27 2.4 2.03 2.32 0.79 2.21 2.66 2.01 2.33 2.48 2.45 2.34 2.62 2.62 2.36];x=[ones(20,1),x1',x2',x3',(x1.*x2)',(x1.*x3)',(x2.*x3)',(x1.*x1)',(x2.*x2)',(x3.*x3)'];[b,bint,r,rint,stats]=regress(y',x);b,stats

运行结果:

b =


  -13.2774
    2.8877
    0.2202
    0.0317
    0.0067
   -0.0019
    0.0003
   -0.4574
   -0.0015
   -0.0005




stats =


    0.3915    0.7148    0.6876    0.3645

原创粉丝点击