我正在尝试对某些数据执行前向、后向和逐步回归;然而,所有这些的摘要看起来都非常相似,所以我想知道我是否做对了一切?
向前选择
#Forward Selection
regA <- step(lm(Rut ~ Visc + Surface + Run + Voids + Visc*Run
+ Surface*Run + Voids*Run,data=dat),
direction="forward")
regA
summary(regA)
Run Code Online (Sandbox Code Playgroud)
向后消除法
lmB <- step(lm(Rut ~ Visc + Surface + Run + Voids + Visc*Run
+ Surface*Run + Voids*Run,data=dat),direction="backward")
lmB
summary(lmB)
Run Code Online (Sandbox Code Playgroud)
逐步
reg1C <- lm(Rut ~ Visc + Surface + Run + Voids + Visc*Run
+ Surface*Run + Voids*Run,data=dat)
step(reg1C)
summary(reg1C)
Run Code Online (Sandbox Code Playgroud)
假设您尝试执行回归来预测房屋价格。假设我们的一些变量是卧室、浴室的数量、房子的大小、列出的日期和建造年份。请参阅下文,了解使用 R 的前向、后向和逐步自动选择技术。
#Forward
nullmod <- lm(Price ~ 1, data = dat)
fullmod <- lm(Price ~ Beds + Baths + size + Date + Year
+ AshburnMetro,data=dat)
reg1A <- step(nullmod, scope = list(lower = nullmod, upper = fullmod),
direction="forward")
reg1A
str(summary(reg1A))
#Backwards
fullmod <- lm(Price ~ 1, data = dat)
nullmod <- lm(Price ~ Beds + Baths + size + Date + Year
+ AshburnMetro,data=dat)
reg1B <- step(nullmod, scope = list(lower = fullmod, upper = nullmod),
direction="backward")
reg1B
str(summary(reg1B))
summary(reg1B)
#Stepwise
fullmod <- lm(Price ~ 1, data = dat)
nullmod <- lm(Price ~ Beds + Baths + size + Date + Year
+ AshburnMetro,data=dat)
reg1C <- step(nullmod, scope = list(lower = fullmod, upper = nullmod),
direction="both")
reg1C
str(summary(reg1C))
Run Code Online (Sandbox Code Playgroud)