使用mice包,我输入了一个数据集,如下所示:
imp <- mice(nhanes)它为每个变量生成5个估算数据集:
imp$imp$bmi
# 1 2 3 4 5
#1 35.3 30.1 26.3 28.7 27.2
#3 30.1 22.0 30.1 28.7 22.0
#4 21.7 27.2 25.5 24.9 21.7
#6 24.9 25.5 24.9 27.5 22.5
#10 20.4 33.2 26.3 27.2 27.4
#11 22.0 27.2 27.2 30.1 22.0
#12 27.4 20.4 27.2 27.2 20.4
#16 30.1 30.1 27.2 22.5 29.6
#21 27.4 27.2 26.3 22.0 30.1所以我不知道如何选择最好的推算数据。
例如,对于bmi (如上),5列中的哪一列将是最佳选择?
谢谢
发布于 2017-11-16 20:31:16
没有最好的数据集。选择单个数据集将仅考虑数据集内的变化/误差,而不考虑数据集之间的变化。
这就是为什么像回归这样的分析在处理估算数据时应该利用with和pool命令。
发布于 2019-10-08 21:15:13
mice的整个概念是,您拥有多个估算的数据集。
如果你只想要1个推算的数据集,你可以使用Single Imputation包,比如missForest,imputeR,VIM,这些包有时更容易使用/理解语法。
像mice这样的Multiple Imputation包的优点是,您有多个推算数据集,这可以帮助解释通过执行推算而发生的不确定性。
您不会使用其中一个估算的数据集,而是对所有5个(或更多)这些数据集执行分析。
通过这样做,您知道您的分析结果可能会有多大的不同。之后,您可以汇集您的结果。mice可帮助您完成此过程。
典型的mice工作流程如下所示:
# 1. Perform imputations
imp <- mice(nhanes, maxit = 2, m = 2)
# 2. Create model for all imputed datasets / in this case m = 2
fit <- with(data = imp, exp = lm(bmi ~ hyp + chl))
# 3. Pool the results
pool <- pool(fit)
# Print results
summary(pool)https://stackoverflow.com/questions/43480499
复制相似问题