首页 > 解决方案 > 如何使用 MICE 包进行多重插补后的预测

问题描述

作为我分析的一部分,我必须进行预测,但老鼠没有这样做的工具!这意味着使用“with”然后使用“pool”是行不通的!

X1<-c(1,1,1,0,0,NA)
X2<c(0,NA,1,NA,NA,0)
X3<-c(1,0,1,1,NA,0)
X4<- c(1,0,1,0,1,1)
data<-data.frame(X1,X2,X3,X4)

p<- glm(X3~X1+X2, family= "binomial", data=subset(data, X4==1))
pre<- predict(p, newdata=data, type="response")

有没有人有任何解决方案?就我而言,我有 20 个估算数据集,我尝试分别对每个数据集进行分析,然后取我想要的估计值的平均值,但这似乎并不正确。

PS: Steffens 回答后对问题进行了编辑,以使其更加清晰。

标签: rregressionlogistic-regressionpredictionimputation

解决方案


您的示例目前似乎不完整……您在哪里使用鼠标以及丢失的数据在哪里?

我假设你计划这样的事情:

library("mice")
X1 <- c(1,NA,1,0,1,0)
X2 <- c(0,1,1,NA,0,0)
data1 <-data.frame(X1,X2)

imp <- mice(data1)

fit <- with(imp, glm(X1~X2, family = binomial))
summary(pool(fit))

这为您提供了合并模型的参数估计值。如果你对他们感兴趣...

创建预测是净步骤,但实际上有不同的方法来解决这个问题(从科学的角度来看)。可能还取决于您要归档的内容(您尚未提及)

这是一篇关于此问题的有趣论文“从模型拟合到乘以估算数据中获取预测” 。

Stef van Buuren(老鼠作者)也有一些关于实现代码的建议:https ://github.com/amices/mice/issues/82


推荐阅读