首页 > 解决方案 > 为什么与 MatchIt R 包的精确匹配会找到具有 2 个不同级别的分类变量的匹配对?

问题描述

我实际上正在研究金枪鱼标签重新捕获数据。我想在两组个体之间平衡我的抽样,一组是在参考区域(治疗组)中标记的,另一组是在该区域之外标记的(对照组)。为此,我使用了该MatchIt软件包。

我有 3 个协变量:长度(5 厘米箱)、标记月份(1 月到 12 月)和标记金枪鱼的结构。

于是就有了模型:treatment ~ length + month + structure

最后一个变量是一个分类变量,有 5 个级别,编码为 A 到 E。级别 A 几乎只代表治疗组(6000 个人结构 = A,而对照组有 300 个人结构 = A)。

我首先使用了最近邻法,但平衡性的改善并不令人满意。所以我运行了精确匹配和粗化精确匹配方法。

我认为 Exact 方法应该为每个协变量匹配具有相同值的对。但在输出的匹配数据中,治疗组中结构=A的个体仍有3000多个。

你们有一个解释吗?我红了很多,但我没有找到答案。

谢谢

标签: rcategorical-dataexact-matchpropensity-score-matching

解决方案


精确匹配和粗化精确匹配不执行 1:1 匹配。他们找到对照组中与治疗组中的每个成员完全匹配的所有成员。子类是基于预测变量值的每个组合形成的,任何同时具有处理单元和控制单元的子类都被保留,而其他子类则被丢弃。没有配对发生。您的结果表明,您有许多控制单元与某些处理单元具有相同(或在 CEM 的情况下几乎相同)协变量值。


推荐阅读