[MATLAB]逐步回归详解(stepwise使用指南)
逐步回归方法使用还要从一个实际生产的例子说起!
同学们一般拿到题目,脑子里看到字眼应该可以想出,是个回归模型,但是题目后半部分让你确定哪些是主要因素,有主要必然有次要,所以此题采用逐步回归就比较好。 设出变量:
-
推销开支—x1 实际帐目数–x2 同类商品竞争数—x3 地区销售潜力—x4
用逐步回归代码步骤如下
-
表示x1,x2,x3,x4,y 生成对应的向量组 使用regress(回归函数),stepwise(逐步回归)
代码如下:
x1=[5.5 2.5 8 3 3 2.9 8 9 4 6.5 5.5 5 6 5 3.5 8 6 4 7.5 7];%%(20维) x2=[31 55 67 50 38 71 30 56 42 73 60 44 50 39 55 70 40 50 62 59]; x3=[10 8 12 7 8 12 12 5 8 5 11 12 6 10 10 6 11 11 9 9]; x4=[8 6 9 16 15 17 8 10 4 16 7 12 6 4 4 14 6 8 13 11]; y=[79.3 200.1 163.2 200.1 146 177.7 30.9 291.9 160 339.4 159.6 86.3 237.5 107.2 155 201.4 100.2 135.8 223.3 195]; X=[ones(size(x1)),x1,x2,x3,x4]; [b,bint,r,rint,stats]=regress(y,X) stepwise(X(:,2:end), y)
如果大家对matlab中regress的输出参数有兴趣,我这个博文有一个介绍:
本篇博文还主要探讨逐步回归分析呢!逐步回归分析法主要思想如下:
-
从一个自变量开始,根据自变量对Y作用的显著程度,从大到小地依次逐个引入回归方程。 当引入的自变量由于后引入变量而变得不显著时,要将其剔除掉。 引入一个自变量或从回归方程中剔除一个自变量,为逐步回归的一步。 对于每一步都要进行检验,以确保每次引入新的显著性变量前回归方程中只包含对y作用显著的变量。 这个过程反复进行,直至既无不显著的变量从回归方程中剔除,又无显著变量可引入回归方程时为止。
这个时候每引进一个变量就会变蓝,如图!
直到不能点为止!凭什么?我要这样做,这样子做的原理在哪里? 根据p值,升序的将值引入,越接近1越不好,p值是《概率论与数理统计》中的一个统计值,学建模的人知道这个影响逐步回归效果即可!不知不觉中就会发现,只能引进两个,也就是x2,x3。说明它们两是主要因素!
往期优秀博主同类博文: 传送门: