我有一个关于R前锋选择的快速问题。所以我有一个30个变量列表,我用glm训练过。
model1 = glm(eggs ~ ., data = traindata1, family = binomial())
。代表trainingdata中的31个变量。所以我加载了MASS并尝试使用前向选择运行stepAIC。 我跑:
step1 = stepAIC(model1, selection = "forward")
然而,它只是给了我与初始模型相同的最终模型。它跑了一次。当我这样做时:
step1 = stepAIC(model1, selection = "backward")
它有效,并给了我一堆模型。我如何准确地让“前进”工作?我试图在mode1中包含一个变量,然后将范围命名为不同的东西,但它不起作用。我不想单独添加每个变量。
任何想法都会有所帮助。
答案 0 :(得分:2)
前向选择将添加变量。如果您从完整模型开始,则无法执行此操作。例如,您可以从拦截开始,然后指定范围。
简单示例
m <- lm(mpg ~ 1, mtcars)
stepAIC(m, direction="forward", scope=list(lower=m, upper=~wt+disp+cyl+gear))