首页 > 解决方案 > 使用逐步回归查找指定数量的预测变量

问题描述

我试图在 104 个变量中找到有限数量的预测变量(最大值 = 6)。所以,我使用逐步回归(对于每个变量我有 10532 个值)。我试过 MATLAB:

mdl = stepwiselm(Pr, obs,'PEnter', 0.06)

但是,它给了我大约 70 个变量。另外,我尝试使用 R 包解决问题leaps

b <- leaps::regsubsets(obs ~ ., data=Pr, nbest=1, nvmax=6)

我收到以下错误:

“Leaps.exhaustive(a,really.big) 中的错误:穷举搜索会很慢,必须指定 real.big=T”

我知道这应该是解决这个问题的一种简单方法,但我似乎无法找出正确的格式。先感谢您。

标签: rmatlabregression

解决方案


利用

leaps::regsubsets(obs ~ ., data=Pr, nbest=1, nvmax=6, really.big=T)

或者你可以试试

library(MASS)
# Fit the full model 
full.model <- lm(obs ~ ., data=Pr)
# Stepwise regression model
step.model <- stepAIC(full.model, direction = "both", 
                      trace = FALSE)
summary(step.model)

推荐阅读