在一篇文章里看到的做法,感觉比较可靠:
psmatch2 $treat $x , out(y) logit ate neighbor(1) common caliper(.05) ties
gen pair=_id if _treated==0
replace pair=_n1 if _treated==1
bysort pair: egen paircount5=count(pair)
drop if paircount5!=2 //把不等于2的删除掉就好
能否匹配成功主要看_pdif是否相同,在1:1匹配的情况下,若只保留配对数据,会损失不少样本。如果通过drop if _weight==.来保留匹配样本会多很多。