Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

st: forcing an exact match with ps2match

From   "Caskey, Judson" <>
To   "" <>
Subject   st: forcing an exact match with ps2match
Date   Thu, 2 Sep 2010 10:38:54 -0700

FYI, I found a way to force exact matches with psmatch2. I needed this because I wanted to force within year matches, but my data did not have enough treated observations per year to estimate the logit p-score model within year.

Here is an example of forcing within-year matches to estimate the effect of union membership on wages:

webuse nlswork
logit union collgrad age tenure not_smsa c_city south nev_mar
predict pscore if e(sample), pr
gen pscore2=year*10+pscore
psmatch2 union, pscore(pscore2) outcome(ln_wage) caliper(0.5)

This works because the psmatch2 code does not force the propensity score to be between 0 and 1. A 1985 observation with a p-score of 0.086 will have pscore2=850.086, which, given the caliper, can only be matched to other 1985 observations. This approach can be used to force exact matches on other variables by just expanding what goes into pscore2.

*   For searches and help try:

© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index