[英]Pooling results of multiple imputation, pool() function error, mice package
I am new to multiple imputation.我是多重插补的新手。 I followed tutorials that I found online and performed multiple imputations on my own data.我遵循了我在网上找到的教程,并对我自己的数据进行了多次插补。 Everything went well until the very last step when I need to pool results from different data sets with imputed values.一切都很顺利,直到最后一步,我需要将来自不同数据集的结果与估算值合并。 R gave me the following error messages: R 给了我以下错误消息:
pool(rep1_mi)
Error: No tidy method for objects of class qr
In addition: Warning messages:
1: In get.dfcom(object, dfcom) : Infinite sample size assumed.
2: 'tidy.numeric' is deprecated.
See help("Deprecated")
3: 'tidy.numeric' is deprecated.
See help("Deprecated")
4: 'tidy.numeric' is deprecated.
See help("Deprecated")
5: 'tidy.numeric' is deprecated.
See help("Deprecated")
6: 'tidy.numeric' is deprecated.
See help("Deprecated")
7: 'tidy.numeric' is deprecated.
See help("Deprecated")
I didn't find any solution that works.我没有找到任何有效的解决方案。 Could anyone please help?有人可以帮忙吗? Thanks.谢谢。
This GitHub issue is related to your problem.这个 GitHub 问题与您的问题有关。 You can work around it by using the pool.scalar()
function.您可以使用pool.scalar()
函数来解决它。
Try to run your model directly on the output given by mice
and not on the output given by complete
function尝试直接在mice
给出的输出上运行模型,而不是在complete
函数给出的输出上运行
library(psych)
# to create some missingness
bfi[4,1] = NA_character_
bfi[6,2] = NA_character_
bfi[9,1] = NA_character_
bfi[7,2] = NA_character_
bfi[6,1] = NA_character_
# run mice
imput.bfi <- mice(bfi, m = 3)
# when "complete" function is used, "pool" function will not run
bfi.imp.dat=mice::complete(imput.bfi, action="long", inc = TRUE)
# run linear regression
lm.bfi=with(bfi.imp.dat, lm(N1 ~ age))
# pool will not work here
pool(lm.bfi)
# In this case the "pool" function will work properly
# run linear regression
lm.bfi=with(imput.bfi, lm(N1 ~ age))
# pool results
pool(lm.bfi)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.