Announcement

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

  • Interpreting Semi-Elasticities From "margins"

    I am estimating a multinomial logit model using mlogit. My dependent variable, y, has three outcomes (1, 2, and 3), and my independent variable, x, is a continuous float between 0 and 15. My code:

    Code:
    . quiet mlogit y x
    . margins, dyex(x)
    
    Average marginal effects                        Number of obs     =      8,185
    Model VCE    : OIM
    
    dy/ex w.r.t. : x
    1._predict   : Pr(y==1), predict(pr outcome(1))
    2._predict   : Pr(y==2), predict(pr outcome(2))
    3._predict   : Pr(y==3), predict(pr outcome(3))
    
    ------------------------------------------------------------------------------
                 |            Delta-method
                 |      dy/ex   Std. Err.      z    P>|z|     [95% Conf. Interval]
    -------------+----------------------------------------------------------------
    x          |
        _predict |
              1  |  -.0049955   .0030267    -1.65   0.099    -.0109277    .0009367
              2  |  -.0136631   .0032885    -4.15   0.000    -.0201085   -.0072177
              3  |   .0186586   .0035522     5.25   0.000     .0116965    .0256207
    ------------------------------------------------------------------------------
    I read this as:

    A 100% increase in "x" increases "Pr(y==1)" by 0.49955 percentage points.
    Is this the correct interpretation of the reported semi-elasticities?

    Thanks!

  • #2
    Any takers? I'm almost certain that I'm interpreting the estimates correctly, but wouldn't mind reassurance from more seasoned State users.

    Comment


    • #3
      I don't think that is quite right. Here's the code example that shows what Stata is doing under the hood with margins, dyex:


      Code:
      . webuse sysdsn1, clear
      (Health insurance data)
      
      . qui mlogit insure age i.(male nonwhite site), nolog
      
      . margins, dyex(age) predict(outcome(1)) 
      
      Average marginal effects                        Number of obs     =        615
      Model VCE    : OIM
      
      Expression   : Pr(insure==Indemnity), predict(outcome(1))
      dy/ex w.r.t. : age
      
      ------------------------------------------------------------------------------
                   |            Delta-method
                   |      dy/ex   Std. Err.      z    P>|z|     [95% Conf. Interval]
      -------------+----------------------------------------------------------------
               age |    .118398   .0622018     1.90   0.057    -.0035153    .2403113
      ------------------------------------------------------------------------------
      
      . predict double phat0, outcome(1)
      (option pr assumed; predicted probability)
      (1 missing value generated)
      
      . replace age = age*1.01
      (643 real changes made)
      
      . predict double phat1, outcome(1)
      (option pr assumed; predicted probability)
      (1 missing value generated)
      
      . gen double dp = (phat1 - phat0)*100
      (1 missing value generated)
      
      . sum dp if e(sample)
      
          Variable |        Obs        Mean    Std. Dev.       Min        Max
      -------------+---------------------------------------------------------
                dp |        615     .118397    .0381523   .0428492   .2267397
      In other words, a 1% increase in x decreases Pr(y=1) by 100*0.0049955=0.49955 percentage points.

      Mathematically, this comes about because the semi-elasticity is (dp/dx)*x = 100*dp/(100*dx/x). In my toy example, 100*(1.01*age - age)/age = 1% change in age, so you also need to multiply the change in probability in the numerator by 100.

      Comment

      Working...
      X