r軟體提供了非常方便地進行逐步回歸分析的計算函式step(),它是以aic資訊統計量為準則,通過選擇最小的aic資訊統計量。來達到提出或新增變數的目的。
**實現如下:
data3.1
lmo3.1
lm3.1.for
summary(lm3.1.for)
輸出結果如下:
由上述結果可以看到,前進法一次引入了x5,
x1,x
2,x3
x5,x1,x2,x3
x5,x1,
x2,x
3,最優回歸模型為
y ^=
−1694.6269
+1.3642x1
+1.7679x3
+2.2894x3
+1.7424x5
\hat=-1694.6269+1.3642x1+1.7679x3+2.2894x3+1.7424x5
y^=−1
694.
6269
+1.3
642x
1+1.
7679
x3+2
.289
4x3+
1.74
24x5
模型整體上高度顯著,且各變數的回歸係數均及其顯著,復決定係數r2=
0.9916
r^=0.9916
r2=0.9
916,調整的復決定係數ra2
=0.99
r_^=0.99
ra2=0
.99。
**實現如下:
data3.1
lm3.1
lm3.1.back
summary(lm3.1.back)
輸出結果為:
前進法和後退法都有明顯的不足。前進法可能存在這樣的問題:它不能反映引進新的自變數值之後的變化情況。因為某個自變數開始被引入後得到回歸方程對應的aic最小,但是當再引入其他變數後,可能將其從回歸方程中提出會是的aic值變小,但是使用前進法就沒有機會將其提出,即一旦引入就會是終身制的。這種只考慮引入而沒有考慮剔除的做法顯然是不全面的。類似的,後退法中一旦某個自變數被剔除,它就再也沒有機會重新進入回歸方程。
根據前進法和後退法的思想及方法,人們比較自然地想到將兩種方法結合起來,這就產生了逐步回歸。
**實現如下:
data5.5
lm5.5
lm5.5_step
summary(lm5.5_step)
輸出結果為:
從輸出結果看到,逐步回歸篩選的最優子集為x1,
x2,x
4x1,x2,x4
x1,x2,
x4,但在顯著水平為0.05時,x4x4
x4的回歸係數不顯著。從上述結果可知,由aic值選出來的模型在整體最優,但是可能會包含不顯著的變數。故需要刪去不顯著的變數x4x4
x4,得到新的回歸結果。
R語言之逐步回歸
逐步回歸就是從自變數x中挑選出對y有顯著影響的變數,已達到最優 用step 函式 匯入資料集 cement data.frame x1 c 7,1,11,11,7,11,3,1,2,21,1,11,10 x2 c 26,29,56,31,52,55,71,31,54,47,40,66,68 x3 c...
Matlab 逐步回歸
例 hald,1960 hald 資料是關於水泥生產的資料。某種水泥在凝固時放出的熱量 y 單位 卡 克 與水泥中 4 種化學成品所佔的百分比有關 在生產中測得 12 組資料,見表5,試建立 y 關於這些因子的 最優 回歸方程。對於例 4 中的問題,可以使用多元線性回歸 多元多項式回歸,但也可以考慮...
python逐步回歸法 逐步回歸的快速實現
forward selection,which involves starting with no variables in the model,testing the addition of each variable using a chosen model comparison criteri...