【发布时间】:2021-12-14 13:31:30
【问题描述】:
我正在使用 R 中的 MatchIt 包来执行倾向得分匹配。匹配方法是最近邻,距离度量是 glm。当我将比率和卡尺设置为默认值时,或者如果我只为其中一个输入非默认值,我会得到我期望的权重分布而不需要替换,即全部为 0 或 1。但是,当我将两者都设置为非默认值我得到一些高于 1 和一些介于 0 和 1 之间的权重,这是我与替换相关联的分布。
我是否误解了带替换和不带替换采样之间的区别,还是这种情况会覆盖 replace=F 参数?我已阅读包文档,但很可能我错过或误解了解释这一点的部分。如果是这样,请随时将我引导至相关部分!
一个(希望)可重现的例子:
set.seed(42)
DF<-data.frame(Group=factor(c(rep("Treatment",40),rep("Control",360))),
mVar1=factor(c(sample(LETTERS[c(1,1,1,2)],40,replace=T),sample(LETTERS[c(1,2)],360,replace=T))),
mVar2=factor(c(sample(LETTERS[c(3,3,4,4,4,5)],40,replace=T),sample(LETTERS[c(3,4,5)],360,replace=T))),
mVar3=c(rpois(40,3),rpois(360,1)))
str(DF)
(m1<-matchit(Group~mVar1+mVar2+mVar3,data=DF,method="nearest",distance="glm",ratio=3,replace=F))
plot(m1,type="jitter",interactive=FALSE)
hist(m1$weights)
(m2<-matchit(Group~mVar1+mVar2+mVar3,data=DF,method="nearest",distance="glm",caliper=0.1,replace=F))
plot(m2,type="jitter",interactive=FALSE)
hist(m2$weights)
(m3<-matchit(Group~mVar1+mVar2+mVar3,data=DF,method="nearest",distance="glm",ratio=3,caliper=0.1,replace=F))
plot(m3,"jitter",interactive=FALSE)
hist(m3$weights)
谢谢!
【问题讨论】:
标签: r propensity-score-matching