1

我正在使用 R 中的 mouse 包进行多重插补并试图理解其背后的算法。

在其文档http://www.jstatsoft.org/v45/i03/paper中,据说使用了 MICE 算法。据我了解,它使用 Gibbs Sampler 执行 MCMC,其中模拟参数 BETA,该参数定义了给定 Y-(没有 Y 的所有其他变量)的 Y(具有缺失值的变量)的条件分布。使用模拟的 BETA,定义了相应的条件分布。然后它从条件分布中提取值并用它替换缺失的值。它对所有具有缺失值的变量重复该过程。

但是,我不明白的是,回归发生在哪里?在mice() 函数中,我们确实需要指定'method' 参数。例如,'logreg' 用于二项分布变量,'polyreg' 用于超过 2 级的因子变量。如果插补由 MCMC 完成,为什么我们需要指定回归?

一些文档表明 MICE 算法在所有缺少模式的变量上迭代地运行回归。每次缺失一个变量为被访变量,其余均为解释变量。然后使用拟合值替换缺失值并转到下一个缺失值变量。下一个回归将包括上次回归的估算数据。这与 Gibbs 采样器的方案相同,但似乎没有模拟。详细信息在这里http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3074241/

任何人都可以帮助我了解 R 中老鼠的真实情况吗?

4

1 回答 1

2

对于具有缺失数据的每个变量 (Y1,...,Yj,...Yk),MICE 算法拟合一个统计模型,将 Yj 调节到所有其他变量(Yj-或其子集)上。统计模型的类型由 表示method。这就是“回归”。给定 Yj-,拟合模型用于绘制 Yj 缺失部分的替代品。之后,算法继续处理包含缺失值的下一个变量。

一旦所有变量都被填满,算法就会重新开始。

请注意,在拟合模型时,MICE 算法将Yj的观察部分回归到 Yj- 的观察估算部分。换句话说,在每次迭代中,回归模型以一组不同的预测值为条件(因此通常需要多次迭代)。这与 MI 的其他实现略有不同。

另请注意,MICE 算法不是正式的 Gibbs 采样器(参见 Carpenter 和 Kenward,2013 年编写的非常好的讨论)。

于 2015-06-21T23:46:22.127 回答