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]

Re: st: Matched ID in Kernel Matching (PSMATCH2)

From   Santosh Kumar <>
Subject   Re: st: Matched ID in Kernel Matching (PSMATCH2)
Date   Fri, 24 Sep 2010 14:13:13 -0400

Thanks Austin, for the reply.

Yes, you are right that -psmatch2 is sensitive to sort order of the data.
To  me -psmatch2 syntax seems correct. -psmatch just gives the
difference of average outocmes between treated and untreated after
matching. One can reweight, however the program evaluation literature
is tilted towards matching.

Instead of matching, the other alternatives are to use (a) pscore as
the "treatment" not the actual treatment.

Thanks again,

On Fri, Sep 24, 2010 at 1:02 PM, Austin Nichols <> wrote:
> Santosh Kumar <>:
> Your -psmatch2- syntax is suspect, since you are not regressing a
> treatment indicator on controls.  That said...
> Why not reweight instead of match?
> la var t "Treatment"
> su t, mean
> loc m=r(mean)
> la var pvar "Estimated Propensity Score"
> g w=cond(t,`m'/(`-`m'),pvar/(1-pvar))
> la var w "ATT weight"
> logit y t x* [pw=w]
> Have you tried rerunning -psmatch2- multiple times to see if you get
> the same estimate every time?  My guess is that your estimate depends
> on the sort order of your data, which is an odd feature for any
> estimator.
> On Thu, Sep 23, 2010 at 12:38 PM, Santosh Kumar <> wrote:
>> Dear listserv,
>> I want to use propensity score matching to match the treated with the
>> control. I am using Kernel matching. Instead of getting ATT, I want to
>> run a logistic regression on the matched sample. I am struggling to
>> create a matched sample in kernel matching. In nearest neighbor
>> matching, follwoing syntax will created a matched sample.
>> psmatch2 xvar, pscore(pvar) outcome(yvar) caliper(.001) noreplace
>> neighbor(1)
>> gen pair = _id if _treated==0
>> replace pair = _n1 if _treated==1
>> bysort pair: egen paircount = count(pair)
>> drop if paircount !=2
>> save paired, replace
>> Could anyone help me in creating a matched sample with Kernel Matching?
> *
> *   For searches and help try:
> *
> *
> *



*   For searches and help try:

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