我正在寻找在 R 中使用CCA
包在多重插补数据集(从 mouse 包中获得)上进行规范相关分析(CCA)。
我知道该mice
软件包允许您汇集完整的数据集并使用公式进行线性模型和一般线性模型,例如:
mice.data <- mice(data, m = 5)
mice.lm <- with(data = mice.data, exp = lm(y ~ x + ...))
pooled.mice.lm <- pool(mice.lm)
但我不认为它有能力为 CCA 做到这一点。原因是该pool
函数需要一个方差-协方差矩阵,而 CCA 不计算该矩阵。
问题:
- 汇集我的数据集/结果的最佳方式是什么?分别对每个完整数据集进行 CCA,然后对每个插补的规范变量进行平均以获得最终的规范变量集是否有效?
complete()
或者是否有某种方法可以使用包含单独 .id 和 .imp 变量的长格式数据集一次性完成所有操作?
例如问题 1:
Vars 2-5 是预测器集,vars 6-15 是标准集;包含两者的合并数据被一起估算以产生mice.data。
mice.data <- mice(data, m = 5)
mice.data.list <- vector("list", 5)
for (i in 1:5) {
m.data <- complete(mice.data, i)
predictors <- m.data[, 2:5]
criterions <- m.data[, 6:15]
mice.data.list[[i]] <- cc(predictors, criterions)
}
因此,我最终得到了每个完整估算数据集的规范相关列表,然后我必须弄清楚如何将其平均/合并在一起。
或者,对于问题 2,我将有一个带有单独 .imp 变量的单个数据框,该变量指定该数据集的插补数量,但我仍然必须弄清楚如何将这些结果汇总在一起,可能需要巧妙的聚合? 实际上,这可能是不可能的。