r - 为什么与 MatchIt R 包的精确匹配会找到具有 2 个不同级别的分类变量的匹配对?
问题描述
我实际上正在研究金枪鱼标签重新捕获数据。我想在两组个体之间平衡我的抽样,一组是在参考区域(治疗组)中标记的,另一组是在该区域之外标记的(对照组)。为此,我使用了该MatchIt
软件包。
我有 3 个协变量:长度(5 厘米箱)、标记月份(1 月到 12 月)和标记金枪鱼的结构。
于是就有了模型:treatment ~ length + month + structure
最后一个变量是一个分类变量,有 5 个级别,编码为 A 到 E。级别 A 几乎只代表治疗组(6000 个人结构 = A,而对照组有 300 个人结构 = A)。
我首先使用了最近邻法,但平衡性的改善并不令人满意。所以我运行了精确匹配和粗化精确匹配方法。
我认为 Exact 方法应该为每个协变量匹配具有相同值的对。但在输出的匹配数据中,治疗组中结构=A的个体仍有3000多个。
你们有一个解释吗?我红了很多,但我没有找到答案。
谢谢
解决方案
精确匹配和粗化精确匹配不执行 1:1 匹配。他们找到对照组中与治疗组中的每个成员完全匹配的所有成员。子类是基于预测变量值的每个组合形成的,任何同时具有处理单元和控制单元的子类都被保留,而其他子类则被丢弃。没有配对发生。您的结果表明,您有许多控制单元与某些处理单元具有相同(或在 CEM 的情况下几乎相同)协变量值。
推荐阅读
- arangodb - Arangodb 文档数组与键/值集合
- python - 如何将字符串更改为类似字节的对象?
- mongodb - 在 heroku 上使用 mongodb 部署 jhipster 网关
- node.js - Redux 显示来自 Nodejs 后端的错误消息
- php - 在woocommerce主页中隐藏自定义代码
- node.js - 即使在将 ttl 设置为零之后,AWS APIGateway lambda 授权方缓存策略也是如此
- c# - 使用两点计算模型中的压痕深度?
- r - 在 R 中使用多列对数据进行重复数据删除
- dart - 如何动态翻译应用程序
- html - 导航栏打开时内容不正确