使用 MatchIt 在回顾性分析中匹配组

机器算法验证 r 多重比较 特征选择 多重插补 匹配
2022-04-16 02:41:16

我有兴趣使用 R 包 MatchIt 来预处理我的数据,以便根据预定义的处理变量获得匹配组。但是我面临一些问题。

第一个问题是除了处理变量之外,我的数据还包含许多协变量(大约 80 个)。其中许多协变量都有缺失值,而且 MatchIt 似乎不支持缺失变量。对于那些使用过 MatchIt 的人,你们解决这个问题的方法是什么?您是否使用插补方法(例如 package mice)来避免 NA?或者您是否执行变量选择以选择最重要的变量(例如套索使用glmnet)来进行降维 +/- 插补?

第二个问题是我有很多观察结果(n = 23000),我的治疗组中大约有 200 个,而对照组中剩下的 22800 个。在这种情况下,MatchIt 中的哪种方法最适合(还考虑到我上面描述的数据的其他方面)?

一如既往,非常感谢您的帮助。

1个回答

您可以在以下步骤中使用Matching包:

  • 使用任何包(最好是MICE包)来估算n 个完整的数据集。您将需要估算至少 5 个数据集。
  • 从插补中提取n 个完整的数据集。
  • 计算每个完整数据集中的倾向得分(用于治疗)。
  • 平均所有n 个数据集中的倾向得分,并使用Matching包检索匹配的群组,在该包中,您可以使用外部获得的倾向得分来创建匹配组。

这是在 R 中进行多重插补匹配的替代方法之一。