【问题标题】:How to do the prediction after multiple imputation with MICE package如何使用 MICE 包进行多重插补后的预测
【发布时间】:2021-09-28 07:45:15
【问题描述】:

作为我分析的一部分,我必须进行预测,但老鼠没有这样做的工具! 这意味着使用“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 个估算数据集,我尝试分别对每个数据集进行分析,然后取我想要的估计值的平均值,但这似乎并不正确。

附注: 在 Steffens 回答后对问题进行了编辑以使其更清楚。

【问题讨论】:

  • 您是在尝试对缺少协变量值的观察结果进行预测,还是仅对具有完全观察值的某个新数据进行预测?
  • 您的示例没有缺失值...
  • @DavidLukeThiessen我刚刚编辑了这个问题。我想对数据子集(包括所有协变量)运行逻辑回归,然后对整个数据集进行预测
  • 考虑到您对 Steffen 的回答的评论,似乎更有意义的是对每个估算数据集执行整个分析,然后汇集这些结果,而不是汇集预测模型,然后使用单个预测分析最后一步中的每个观察值。你怎么看?
  • 是的,@DavidLukeThiessen 提出了一个很好的观点。如果您分别对每个 m 个插补数据集执行因果推断,那么您随后能够提供一些有意义的见解,因为插补引入了多少不确定性。我对因果推理知之甚少,但总的来说,您总是可以在结果中声明诸如 std 之类的东西是 ... min,max 对于不同的推算数据集是 ... mean was ... 但我也有几个关于因果推理的多重插补的论文。可能他们对池化有更先进的想法。当然值得一看。

标签: r regression logistic-regression prediction imputation


【解决方案1】:

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

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

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))

这将为您提供池模型的参数估计值。如果你对它们感兴趣...

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

这是一篇关于这个问题的有趣论文"Obtaining Predictions from Models Fit to Multiply Imputed Data"

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

【讨论】:

  • 谢谢 Steffen,我刚刚编辑了这个问题,使其更详细。我的整个分析(即因果推理)高度依赖于预测部分,因为预测值将成为倾向得分的一个版本,所以这对我来说非常重要。在统计方面,我对这些概念不是很熟悉,但是我阅读了 Van Buuren 的建议,甚至尝试过,但最终出现了一些错误(我想我对编程不熟悉也可能是一个原因)跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-03
  • 1970-01-01
  • 2018-04-29
  • 1970-01-01
  • 2016-11-19
  • 1970-01-01
相关资源
最近更新 更多