R中的逐步回归误差

Stepwise regression error in R

我想运行在R中进行逐步回归以选择最适合的模型,我的代码附在这里:

full.modelfixed <- glm(died_ed ~ age_1 + gender + race + insurance + injury + ais + blunt_pen + 
               comorbid + iss +min_dist + pop_dens_new + age_mdn + male_pct + 
               pop_wht_pct + pop_blk_pct + unemp_pct + pov_100x_npct +
               urban_pct, data = trauma, family = binomial (link = 'logit'), na.action = na.exclude)
reduced.modelfixed <- stepAIC(full.modelfixed, direction = "backward")

有一条错误信息说

Error in stepAIC(full.modelfixed, direction = "backward") :   
number of rows in use has changed: remove missing values?

数据中几乎每个变量都有一些缺失值,所以我无法删除所有缺失值(data = na.omit(data))

知道如何解决这个问题吗?

谢谢!!

这可能应该在统计论坛 (stats.stackexchange) 中,但简而言之,有许多注意事项。

主要的一点是,当比较两个模型时,它们需要安装在同一个数据集上(即,您需要能够将模型相互嵌套)。

举例

glm1 <- glm(Dependent~indep1+indep2+indep3, family = binomial, data = data)
glm2 <- glm(Dependent~indep2+indep2, family = binomial, data = data)

现在假设我们缺少 indep3 的值,但没有 indep1 或 indep2。 当我们 运行 glm1 时,我们 运行 将它放在一个较小的数据集上——我们有因变量和所有三个独立变量的数据集(即我们排除了任何缺少 indep3 值的行)。

当我们 运行 glm2 时,包含缺少 indep3 值的行,因为这些行确实包含依赖、indep1 和 indep2,它们是变量中的模型。

我们无法再直接比较模型,因为它们适用于不同的数据集。

我认为大体上你可以 1) 限于完整的数据 2) 如果合适考虑多重插补

希望对您有所帮助。

您可以使用 MICE 包进行插补,然后使用数据集不会给您带来错误