【发布时间】:2014-01-17 18:15:08
【问题描述】:
我正在通过包 MatchIt 运行粗化精确匹配 (CEM) 作为预处理步骤,并希望在进一步分析中使用匹配的数据。在查看匹配数据的汇总统计数据时,我注意到从匹配数据集中提取的均值与 MatchIt 汇总输出不同。例如,使用 lalonde 数据集:
library(MatchIt)
library(doBy)
data(lalonde)
m.out <- matchit(treat ~ age + educ + black + hispan + married + nodegree + re74 + re75, data = lalonde, method = "cem")
summary(m.out) #Means from MatchIt summary output:
Summary of balance for matched data:
Means Treated Means Control
age 21.5441 21.1781
educ 10.2941 10.3827
black 0.8676 0.8676
hispan 0.0588 0.0588
married 0.0441 0.0441
nodegree 0.6176 0.6176
re74 456.1345 622.8740
re75 350.6728 520.7135
m.dat<-match.data(m.out)
ExtractedMeans<-summaryBy(age+educ+black+hispan+married+nodegree+re74+re75 ~ treat, data = m.dat, FUN=function(x) { c(Mean=mean(x)) } )
ExtractedMeans #Means extracted manually from matched data:
treat 1 0
age.Mean 21.544 19.628
educ.Mean 10.294 9.7179
black.Mean 0.8676 0.60256
hispan.Mean 0.0588 0.10256
married.Mean 0.0441 0.07692
nodegree.Mean 0.6176 0.75641
re74.Mean 456.13 609.61
re75.Mean 350.67 464.22
从匹配数据中手动提取的对照组的均值与 MatchIt 汇总输出不一致。有人知道这里发生了什么吗?我上周将这个问题发布到了 MatchIt gmane 电子邮件列表,但没有收到回复。感谢您的帮助。
【问题讨论】: