Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Psmatch2 - Number of observations under common support different with "ate" option

    Hello,

    I'm using Stata 14 and have two problems when I use the "ate" option and omit the option from psmatch2.


    When I run the psmatch2 command using the following options ", logit noreplacement common neighbor(1) ate" I get an equal number of treated and untreated participants "on support" (as expected):



    Code:
    psmatch2 ever_ecigw1 $covars_0 if wave1==1 & wave2==1 & sample_0==1, out(nvr2evr_cigsw2) logit noreplacement common neighbor(1) ate
    Click image for larger version

Name:	Equal ns.PNG
Views:	1
Size:	4.6 KB
ID:	1402011




    However, Stata does not display the SE or the t-statistic for the ATT or ATE:
    Click image for larger version

Name:	Missing se.PNG
Views:	1
Size:	10.4 KB
ID:	1402012




    When I remove the ate option: ", logit noreplacement common neighbor(1)", the number of untreated participants is no longer equal to the number of treated participants, even when specifying neighbor(1):


    Code:
    psmatch2 ever_ecigw1 $covars_0 if wave1==1 & wave2==1 & sample_0==1, out(nvr2evr_cigsw2) logit noreplacement common neighbor(1)
    Click image for larger version

Name:	Unequal ns.PNG
Views:	1
Size:	4.4 KB
ID:	1402013




    However, the SE and t-statistic for the ATT are displayed:
    Click image for larger version

Name:	Present se.PNG
Views:	1
Size:	10.7 KB
ID:	1402014




    Why does omitting the "ate" option create an unequal number of untreated and treated participants, even when specifying neighbor(1)? Am I able to limit the number of untreated participants to the number of treated participants and still get the standard error and t-statistic for the ATT?

    Thank you,

    Amanda Johnson
    Last edited by Amanda Lee Johnson; 14 Jul 2017, 08:29.

  • #2
    Are you certain that the first example yields equal numbers of treated and controls? Did you try excluding cases with missing weights after matching?

    Here is a silly example that demonstrates what I mean. It initially looks like 460 treated and 460 controls, but after you exclude cases with missing weights, it's actually 460 treated and 150 controls.

    Code:
    . sysuse nlsw88, clear
    (NLSW, 1988 extract)
    
    . set seed 12345
    
    . psmatch2 union age grade, out(south) logit noreplacement common neighbor(1) ate
    
    Logistic regression                             Number of obs     =      1,876
                                                    LR chi2(2)        =      16.28
                                                    Prob > chi2       =     0.0003
    Log likelihood = -1036.7974                     Pseudo R2         =     0.0078
    
    ------------------------------------------------------------------------------
           union |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
    -------------+----------------------------------------------------------------
             age |   .0116694   .0177773     0.66   0.512    -.0231734    .0465122
           grade |   .0845844   .0212503     3.98   0.000     .0429345    .1262342
           _cons |  -2.707582   .7643717    -3.54   0.000    -4.205724   -1.209441
    ------------------------------------------------------------------------------
    There are observations with identical propensity score values.
    The sort order of the data could affect your results.
    Make sure that the sort order is random before calling psmatch2.
    ----------------------------------------------------------------------------------------
            Variable     Sample |    Treated     Controls   Difference         S.E.   T-stat
    ----------------------------+-----------------------------------------------------------
               south  Unmatched | .295652174   .467514124   -.17186195   .026248469    -6.55
                            ATT | .295652174   .267391304    .02826087   .024567277     1.15
                            ATU | .506521739   .295652174  -.210869565            .        .
                            ATE |                          -.091304348            .        .
    ----------------------------+-----------------------------------------------------------
    Note: S.E. does not take into account that the propensity score is estimated.
    
     psmatch2: |   psmatch2: Common
     Treatment |        support
    assignment | Off suppo  On suppor |     Total
    -----------+----------------------+----------
     Untreated |       956        460 |     1,416
       Treated |         0        460 |       460
    -----------+----------------------+----------
         Total |       956        920 |     1,876
    
    
    . tab _treated _weight
    
               | psmatch2:
               | weight of
     psmatch2: |  matched
     Treatment |  controls
    assignment |         1 |     Total
    -----------+-----------+----------
     Untreated |       150 |       150
       Treated |       460 |       460
    -----------+-----------+----------
         Total |       610 |       610
    
    
    . tab _treated _weight, missing
    
     psmatch2: |  psmatch2: weight of
     Treatment |   matched controls
    assignment |         1          . |     Total
    -----------+----------------------+----------
     Untreated |       150      1,266 |     1,416
       Treated |       460          0 |       460
             . |         0        370 |       370
    -----------+----------------------+----------
         Total |       610      1,636 |     2,246
    
    
    . which psmatch2
    .\psmatch2.ado
    *! version 4.0.10 10feb2014 E. Leuven, B. Sianesi
    David Radwin
    Senior Researcher, California Competes
    californiacompetes.org
    Pronouns: He/Him

    Comment


    • #3
      Hi David,

      Thank you for your feedback. It is good to know that I should utilize "_weight" and "_treated" to assess the number of treated and control participants that were used in the model, instead of relying on the output from psmatch2.

      From your example, it looks as thought n=460 treated participants were matched with n=150 control participants, even though you specified no replacement. Does this mean that only n=150 of the treated participants were matched to the n=150 control participants?

      Thank you for your help,

      Amanda

      Comment


      • #4
        That's a good question. I don't know the answer offhand, nor was I able to figure it out after some effort. I can tell you that others have had concerns about weights in psmatch2, such as http://stephenporter.org/understandi...atas-psmatch2/ .
        David Radwin
        Senior Researcher, California Competes
        californiacompetes.org
        Pronouns: He/Him

        Comment


        • #5
          Hi David,

          Thank you for your feedback. I have also been searching online and have come up empty-handed. I appreciate your help and found the linked post very helpful in explaining weights in psmatch2.

          Comment

          Working...
          X