与R中的MATCHIT进行3:1匹配,对照不等于病例数的3倍。 [英] 3:1 matching with MatchIt in R. The number of matched control is not equal to 3 times the number of cases

查看:0
本文介绍了与R中的MATCHIT进行3:1匹配,对照不等于病例数的3倍。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,我正在使用R中的MatchIt

我总共有116个未匹配的已治疗病例和462个未匹配的未治疗病例

使用命令

mod_match_logit = matchit(f.build("treatement_yes_or_no", covariates), 
method = "nearest", distance = "logit", data = df, caliper = 0.05, ratio = 3)
然后我得到91个匹配的治疗病例和248个匹配的未治疗病例的结果。我不明白的是,在3:1匹配的情况下,我应该有91*3=273个匹配的未治疗病例(而不是248个)。默认情况下,命令replaceMatchIt中设置为F,因此它不能为我解释差异。我错过了什么?

推荐答案

没有看到数据,我只是猜测,但很可能是因为您的卡尺设置。

MATCHIT将卡尺定义为"绘制控制单位(默认为0,不匹配卡尺)的距离测量的标准偏差数"(p.26)

因此,我的猜测是,在治疗组中有一些单位的高倾向分数无法与未处理组中的单位匹配(至少在您指定的0.05标准差以内)。在匹配的数据集中没有获得273个受试者的原因是因为MATCHIT调用中的卡尺=0.05设置。一些倾向分数较高的接受治疗的受试者仍将与至少一个未接受治疗的受试者匹配,但由于超过了0.05卡尺的规格,无法匹配到第二个或第三个。 也许增加卡尺可以保留更多的治疗对象,但根据文献中记录的最佳实践,我不会超过0.25。

根据您的研究设计,您可以考虑使用其他匹配方法。例如,您可以使用欧几里德以外的距离,例如Mahalanobis,这是MATCHIT中的一个选项。或者,您也可以使用‘optMatch’库中的最佳完全匹配或最佳配对匹配,尽管您也可以通过MATCHIT函数调用它们。还有许多其他方法,但可以很容易地从MATCHIT库访问这些方法。文献确实建议尝试几种不同的方法,然后检查平衡,只要你不"挑剔"给你最大效果的方法。换句话说,根据协变量平衡而不是研究中的结果变量来选择匹配的集合。倾向得分匹配肯定有一门艺术,但这就是为什么我认为它如此有趣!

这篇关于与R中的MATCHIT进行3:1匹配,对照不等于病例数的3倍。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆