【问题标题】:Using R MICE to impute missing data and calculate sums使用 R MICE 估算缺失数据并计算总和
【发布时间】:2022-08-24 02:00:40
【问题描述】:

这是我第一次尝试在 R 中使用鼠标。我有一个横截面数据集,其中包含多个尺度的响应。我想在输入缺失数据后计算几个尺度的总和。

我想修改R - mice - adding a column that sums columns with imputed values 中提供的代码,该代码基于发布在关于如何Perform operation on each imputed dataset in R\'s MICE 的帖子中的回复。但是,我不确定这部分代码中的每一行是做什么的:

pred1 <- ini$pred  
#change the predictor matrix so only bdd$EE1-9 predicts EE (necessary?)
pred1[ \"EE\", ] <- 0 
pred1[ \"EE\", c(\"EE1\", \"EE2\", \"EE3\", \"EE4\", \"EE5\", \"EE6\", \"EE7\", \"EE8\", \"EE9\")] <- 1
#change the predictor matrix so that EE isnt used to predict
pred1[ , \"EE\" ] <- 0

我认为第一行访问执行mice(。)时生成的mids df中的预测矩阵。接下来,第 2 行和第 3 行更改矩阵,以便仅使用 ~I() 语句中包含的变量来估算/计算总和。我认为这不是必需的?请确认。最后,第 4 行更改了矩阵,因此总和不用于估算其他变量。这是必需的吗?请确认

您能否确认我理解此代码的功能或提供其功能的逐行解释?提前致谢!

  • 在我的项目中使用它之前,我想了解这部分代码。完成分析后,我将分享我的代码 :) 希望其他人会发现它有帮助!

标签: r sum r-mice


【解决方案1】:

你的理解是正确的。

pred1 &lt;- ini$pred 提取由mice() 创建的初始预测矩阵。预测器矩阵是一个 P×P 矩阵,其中第 i 行第 j 列中的 1 表示第 j 个变量用作第 i 个变量的预测器。

pred1[ "EE", ] &lt;- 0 从 EE 变量中删除所有预测变量。 pred1[ "EE", c("EE1", "EE2", "EE3", "EE4", "EE5", "EE6", "EE7", "EE8", "EE9")] &lt;- 1 添加 EE1-9 作为 EE 变量的预测变量。这些步骤都不是必需的,因为正在使用被动插补。但是,把它留在里面并没有什么坏处。

pred1[ , "EE" ] &lt;- 0 将 EE 作为预测变量从数据中的任何其他变量中移除。这是否“好”是一个统计问题,取决于 EE 与任何其他缺失变量之间的关系。删除 EE 作为 EE1-9 的预测变量绝对是一个好主意(尽管我认为这不是绝对必要的)。但是,EE 可能有助于在数据中插入一些其他变量。在这种情况下,您需要确保 EE 和 EE1-9 不会同时作为这些变量的预测变量提供。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 2018-10-06
    相关资源
    最近更新 更多