数学建模之回归分析算法(含matlab源代码) 您所在的位置:网站首页 matlab进行多元线性回归分析 数学建模之回归分析算法(含matlab源代码)

数学建模之回归分析算法(含matlab源代码)

2024-01-16 03:59| 来源: 网络整理| 查看: 265

目录

一、一元线性回归

1、步骤

 2、matlab命令(多元线性回归)

3、举例

 二、一元非线性回归

 三、多项式回归

1、一元多项式回归

 应用

 2、多元二项式

应用

 四、非线性回归

 应用

五、 逐步回归

 应用

一、一元线性回归 1、步骤

 2、matlab命令(多元线性回归)

 

 r²和F越大越好 p越小越好

3、举例 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]'; %回归分析检验 [b,bint,r,rint,stats]=regress(Y,X) b,bint,stats %作残差图: rcoplot(r,rint)ats %预测及作图: z=b(1)+b(2)* %随机 plot(x,Y,'k+',x,z,'r')

 

 

 从残差图可以看出,除第二个数据外,其余数据的残差离零点均较近,且残差的置信区间均包含零点,这说明回归模型 y=-16.073+0.7194x能较好的符合原始数据,而第二个数据可视为异常点.

 二、一元非线性回归

 

 三、多项式回归 1、一元多项式回归

 

 应用

 法一:使用二次多项式回归

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)

 法二:多元线性回归:

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

 

 预测和作图:

Y=polyconf(p,t,S) plot(t,s,'k+',t,Y,'r')

 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')

 

 将左边图形下方方框中的“800”改成1000,右边图形下方的方框中仍输入6.则画面左边的“Predicted Y”下方的数据由原来的“86.3791”变为88.4791,即预测出平均收入为1000.价格为6时的商品需求量为88.4791.

 

beta, rmse

beta =

  110.5313     0.1464   -26.5709    -0.0001     1.8475

rmse =

    4.5362

 法二:

 

X=[ones(10,1) x1' x2' (x1.^2)' (x2.^2)']; [b,bint,r,rint,stats]=regress(y,X); b.stats

 四、非线性回归

 应用

 

x=2:16; y=[6.42 8.20 9.58 9.5 9.7 10 9.93 9.99 10.49 10.59 10.60 10.80 10.60 10.90 10.76]; beta0=[8 2]';%随机取得 [beta,r ,J]=nlinfit(x',y','volum',beta0); beta

 预测和作图:

[YY,delta]=nlpredci('volum',x',beta,r ,J); plot(x,y,'k+',x,YY,'r')

 

五、 逐步回归

 应用

 

x1=[7 1 11 11 7 11 3 1 2 21 1 11 10]'; x2=[26 29 56 31 52 55 71 31 54 47 40 66 68]'; x3=[6 15 8 8 6 9 17 22 18 4 23 9 8]'; x4=[60 52 20 47 33 22 6 44 22 26 34 12 12]'; y=[78.5 74.3 104.3 87.6 95.9 109.2 102.7 72.5 93.1 115.9 83.8 113.3 109.4]'; x=[x1 x2 x3 x4]; stepwise(x,y) % 对变量y和x1 x2做线性回归 X=[ones(13,1) x1 x2]; b=regress(y,X)

 

 做线性回归结果:

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有