我正在研究如何使用多个插补结果。以下是我的理解,如果有错误,请告诉我。
假设您有一个缺少值的数据集,并且想要进行回归分析。您可以对m = 5次执行多次插补,并且对于每个插补数据集(现在有5个插补数据集)运行回归分析,然后通过Rubin规则“合并”这些m = 5个模型的系数估计值(或使用R包“ pool”)。
我的问题是,在小鼠中,您有一个名为“ complete”的命令,并且手册说您可以使用“ complete(object)”提取完成的数据集。
但是,如果我使用小鼠m = 5次,那么使用“完整”是否仍然有意义?哪些插补结果将为我“完成”?
此外,如果我只使用m = 1的鼠标有意义吗?谢谢。
答案 0 :(得分:3)
您可能忽略了参数中的 mice::complete()
使用 action=1
作为默认值,它“返回第一个估算数据集”(参见 ?mice::complete
),实际上是毫无价值。
您绝对应该使用 action="long"
来考虑多重插补的“多重性”!
不,使用 m=1
完全没有意义(除了调试),因为每个插补都基于随机过程,您必须汇集结果(使用任何方法)来解释变化。通常推荐m>20
1。
基本上,多重插补的工作原理如下:
(另请参阅 multiple-imputation-in-a-nutshell 以了解简要概述。)
答案 1 :(得分:0)
使用mice
时,您得到的对象不是估算的数据集。如果不使用mice
中的特殊功能,则无法直接对其进行操作。如果要提取实际的估算数据集,请使用complete
,其输出为data.frame,每个估算值每行一行(如果使用"long"
格式)。如果您要对无法在mice
内执行的估算数据进行任何分析,则需要首先创建此数据集。有关将其用于与多个估算数据匹配倾向得分的示例,请参见documentation中的cobalt
。