用MATLAB求解回归分析

时间:2025-02-24

用MATLAB求解回归分析

统计工具箱中的回归分析命令多元线性回归y = β 0 + β 1 x1 + ... + β p x p

1、确定回归系数的点估计值: 、确定回归系数的点估计值:

b=regress( Y, X ) β0 β b= 1 ... β p

Y1 Y Y = 2 ... Yn

1 x11 1 x 21 X = ... ... 1 x n1

x12 x 22 ... xn 2

... x1 p ... x 2 p ... ... ... x np

对一元线性回归,取p=1即可。

用MATLAB求解回归分析

2、求回归系数的点估计和区间估计、并检验回归模型: 、求回归系数的点估计和区间估计、并检验回归模型: [b, bint,r,rint,stats]=regress(Y,X,alpha)回 归 系 数 的 区 间 估 计 F 检验回归模型的 计 数 : 系数r2、 、 F 的 p 差 区 间 时 为 水 0 平 05 ) . 性 残 信 省 著 置 (缺 显

系数 r2 F > F1F k 的 n-k-1

1

回归 H0 F H0 回归模型 回归 .

p< α

3、 、

区间: 区间:

rcoplot

r

rint

用MATLAB求解回归分析

、输入数据: 例1 解:1、输入数据: x=[143 145 146 147 149 150 153 154 155 156 157 158 159 题目 160 162 164]'; X=[ones(16,1) x]; Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]'; 2、回归分析及检验: 、回归分析及检验: [b,bint,r,rint,stats]=regress(Y,X) b,bint,stats得结果:b = -16.0730 0.7194 stats = 0.9282 180.9531 0.0000 bint = -33.7071 0.6047 1.5612 0.8340

即 β 0 = 16.073, β 1 = 0.7194 ; β 0 的置信区间为[-33.7017,1.5612], β 1 的置信区间为[0.6047,0.834];

r2=0.9282, F=180.9531, p=0.0000 p<0.05, 可知回归模型 y=-16.073+0.7194x 成立.

用MATLAB求解回归分析

3、残差分析,作残差图: 、残差分析,作残差图: rcoplot(r,rint) 从残差图可以看出,除第二个数据外,其余数据的残 差离零点均较近,且残差的置信区间均包含零点,这说明 回归模型 y=-16.073+0.7194x能较好的符合原始数据,而第 二个数据可视为异常点.Residual Case Order Plot 4

4、预测及作图: 、预测及作图: z=b(1)+b(2)*x plot(x,Y,'k+',x,z,'r')

3 2 1 Residuals 0 -1 -2 -3 -4 -5 2 4 6 8 10 Case Number 12 14 16

用MATLAB求解回归分析

多项式回归 (一)一元多项式回归 y=a1xm+a2xm-1+…+amx+am+1 1、回归: 、回归: (1)确定多项式系数的命令:[p,S]=polyfit(x,y,m) ) 其中 x=(x1,x2,…,xn) ,y=(y1,y2 ,…,yn) ; m m-1 p=(a1,a2,…,am+1)是多项式 y=a1x +a2x +…+amx+am+1 的系数;S 是一个矩阵,用来估计预测误差. 2) polytool x y m (2)一元多项式回归命令:polytool(x,y,m) 2、预测和预测误差估计: 、预测和预测误差估计: (1)Y=polyval(p,x)求polyfit所得的回归多项式在 x处 的预测值Y; (2)[Y,DELTA]=polyconf(p,x,S,alpha)求 polyfit所得的回归多项式在x处的预测值Y及预测值的 显著性为 1-alpha的置信区间Y DELTA;alpha缺省时为0.5

用MATLAB求解回归分析

例 2 观测物体降落的距离 s 与时

间 t 的关系,得到数据如下表, 求 s 关于 t 的回归方程 s = a + bt + ct 2 .t s (s) (cm) 1/30 11.86 2/30 15.67 3/30 20.60 4/30 26.69 5/30 33.71 6/30 41.93 7/30 51.13

t s

(s) (cm)

8/30 61.49

9/30 72.90

10/30 85.44

11/30 99.08

12/30 113.77

13/30 129.54

14/30 146.48

方法一

直接作二次多项式回归: 直接作二次多项式回归: 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) 得回归模型为 : s = 489.2946t 2 + 65.8896t + 9.1329

用MATLAB求解回归分析

法二 化为多元线性回归: 化为多元线性回归: 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]; T=[ones(14,1) t' (t.^2)']; [b,bint,r,rint,stats]=regress(s',T); b,stats 得回归模型为 : s = 9.1329 + 65.8896t + 489.2946t 2 预测及作图 Y=polyconf(p,t,S) plot(t,s,'k+',t,Y,'r')

用MATLAB求解回归分析

(二)多元二项式回归 命令:rstool(x,y,’model’, alpha) n×m矩阵 n维列向量 显著性水平 (缺省时为0.05)

由下列 4 个模型中选择 1 个(用字符串输入,缺省时为线性模型): linear(线性): y = β 0 + β 1 x1 + L + β m x m purequadratic(纯二次): interaction(交叉): y =

y = β 0 + β 1 x1 + L + β m x m + ∑ β jj x 2 jj =1

n

β 0 + β 1 x1 + L + β m x m +

1≤ j ≠ k ≤ m

β jk x j x k β jk x j x k

quadratic(完全二次): y =

β 0 + β 1 x1 + L + β m x m +

1≤ j , k ≤ m

用MATLAB求解回归分析

例3 设某商品的需求量与消费者的平均收入、商品价格的统计数 据如下,建立回归模型,预测平均收入为1000、价格为6时 的商品需求量.需求量 收入 价格 100 1000 5 75 600 7 80 1200 6 70 500 6 50 300 8 65 400 7 90 1300 5 100 1100 4 110 1300 3 60 300 9

方法一

2 2 选择纯二次模型,即 y = β 0 + β 1 x1 + β 2 x 2 + β 11 x1 + β 22 x 2

直接用多元二项式回归: x1=[1000 600 1200 500 300 400 1300 1100 1300 300]; x2=[5 7 6 6 8 7 5 4 3 9]; y=[100 75 80 70 50 65 90 100 110 60]'; x=[x1' x2']; rstool(x,y,'purequadratic')

用MATLAB求解回归分析

在左边图形下方的方框中输入1000,右边图形下方的方框中输入6。 则画面左边的“Predicted Y”下方的数据变为88.47981,即预测 出平均收入为1000、价格为6时的商品需求量为88.4791. 在画面左下方的下拉式菜单中选”all”, 则beta、rmse和residuals都 传送到Matlab工作区中.

用MATLAB求解回归分析

在Matlab工作区中输入命令: beta, rmse得结 …… 此处隐藏:3019字,全部文档内容请下载后查看。喜欢就下载吧 ……

用MATLAB求解回归分析.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219