Announcement

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

  • Probit marginal effects

    I estimated the following probit model:

    Code:
    probit enrolled i.male##c.wealth i.male##c.oppcost hhsize
    Following this, marginal effects are obtained as follows:
    Code:
    margins, dydx(*)
                            
            Delta-method
        dy/dx    Std. Err.    z    P>z    [95% Conf.    Interval]
    wealth    .5586363    .0266069    21.00    0.000    .5064878    .6107849
    1.male    -.0147905    .0069082    -2.14    0.032    -.0283303    -.0012507
    oppcost    -.0159329    .0014443    -11.03    0.000    -.0187638    -.0131021
    hhsize    -.0075958    .0019605    -3.87    0.000    -.0114383    -.0037534
    Marginal effects of the interaction term male*wealth is obtained as follows
    Code:
    . margins male, dydx(wealth) pwcompare
       
    Contrast Delta-method    Unadjusted
    dy/dx   Std. Err.    [95% Conf. Interval]
    wealth           
    male 
    1 vs 0     .1057078   .0486557    .0103444    .2010713
    A referee states that 'the effect of being male should include main effects plus interactions, evaluated at the mean values of the variables with which 'male' is interacted'. What extra insight would this offer? How do I interpret the result below assuming this is how to evaluate at the mean values?

    Code:
    margins male, dydx(wealth) at(wealth oppcost)    vsquish
    
    Average marginal effects                        Number of    obs     =    12,740
    Model VCE    : OIM
    
    Expression   : Pr(enrolled), predict()
    dy/dx w.r.t. : wealth
    at           : wealth              =      .54912 (mean)
    oppcost        =    2.853002 (mean)
    
    Delta-method
    dy/dx   Std. Err.      z    P>z    [95% Conf.    Interval]
            
    wealth           
    male 
    0     .5653815   .0406956    13.89   0.000    .4856197    .6451434
    1     .7143289   .0430323    16.60   0.000    .6299872    .7986706


  • #2
    It sounds like the reviewer wants you to use MEMs (marginal effects at the means) rather than AMEs (average marginal effects). I don't agree, but you can just take your first margins command and add the -atmeans- option.

    For an overview of marginal effects, including AMEs versus MEMs, you can see

    https://www3.nd.edu/~rwilliam/xsoc73994/Margins01.pdf
    -------------------------------------------
    Richard Williams, Notre Dame Dept of Sociology
    StataNow Version: 19.5 MP (2 processor)

    EMAIL: [email protected]
    WWW: https://www3.nd.edu/~rwilliam

    Comment


    • #3
      Richard,

      Thanks a lot for your prompt reply. I am confused about: 'People often ask what the marginal effect of an interaction term is. Stata’s margins command replies: there isn’t one' in the link you sent.

      I thought interpreting interaction effects was much simpler. For example, following
      Code:
      probit enrolled i.male##c.wealth
      Code:
       margins, dydx(male)
      Code:
        
      Average marginal effects        Number    of    obs     =    12,740
      Model VCE    : OIM
      
      Expression   : Pr(enrolled), predict()
      dy/dx w.r.t. : 1.male
                          
      Delta-method
      dy/dx   Std. Err.    z    P>z        [95% Conf.    Interval]
                          
      1.male   -.0193667   .0068807    -2.81    0.005        .0328526    -.0058807
      The above is interpreted as' on average the probability of a male being enrolled is 0.02 smaller than that of a female'.
      Then the interaction effect of i.male#c.wealth according the the code below is:

      Code:
      margins male, dydx(wealth) pwcompare
      Code:
      Expression   : Pr(enrolled), predict()
      dy/dx w.r.t. : wealth   
      Contrast Delta-method    Unadjusted
      dy/dx   Std. Err.    [95% Conf. Interval]
          
      wealth           
      male 
      1 vs 0      .114225   .0486663    .0188409    .2096091

      I interpret this as 'the average marginal effect of wealth is 0.11 higher for males compared to females', Is this incorrect?




      Comment


      • #4
        Yes, but you don't need an interaction term in the model to get output like that. Change your code to

        Code:
        probit enrolled i.male c.wealth
        and then rerun your margins commands.

        For example,

        Code:
        webuse nhanes2f, clear
        probit diabetes i.black c.weight, nolog
        margins black, dydx(weight) pwcompare
        probit diabetes i.black##c.weight, nolog
        margins black, dydx(weight) pwcompare
        -------------------------------------------
        Richard Williams, Notre Dame Dept of Sociology
        StataNow Version: 19.5 MP (2 processor)

        EMAIL: [email protected]
        WWW: https://www3.nd.edu/~rwilliam

        Comment


        • #5
          Sorry to persist, but can you please help me with the interpretation?
          Code:
          probit diabetes i.black c.weight, nolog
          Code:
          . margins black, dydx(weight) pwcompare
          
          Pairwise comparisons of average marginal    effects
          Model VCE    : OIM
          
          Expression   : Pr(diabetes), predict()
          dy/dx w.r.t. : weight
          
              
          Contrast Delta-method    Unadjusted
          dy/dx   Std. Err.    [95% Conf. Interval]
              
          weight       
          black 
          1 vs 0     .0003882   .0001115    .0001697    .0006068

          So this says 'the average marginal effect of weight is 0.0004 higher for blacks compared to whites'

          Then what is the interpretation for when interactions are added?
          Code:
          probit diabetes i.black##c.weight, nolog
          Code:
          . margins black, dydx(weight) pwcompare
          
          Pairwise comparisons of average marginal    effects
          Model VCE    : OIM
          
          Expression   : Pr(diabetes), predict()
          dy/dx w.r.t. : weight
          
              
          Contrast Delta-method    Unadjusted
          dy/dx   Std. Err.    [95% Conf. Interval]
              
          weight       
          black 
          1 vs 0     .0009166   .0004255    .0000826    .0017505
          Does this say that 'the average marginal effect of weight is 0.0009 higher for blacks compared to whites'? Sorry but I find reconciling these results very different in spite of reading the links and other discussions.

          Comment


          • #6
            Richard's treatise on the margins command is the gold standard!

            Fathima, perhaps this will help clarify Richard's points (which are correct).

            The interaction effects are encoded in the core modelling command (eg probit), not the margins command itself. The margins command just works off of the posted results from the core command (which may or may not include interaction terms). While there is no marginal effects for the interaction term, any interaction effects included in the probit command will be encoded in the results that are presented by margins.

            So, both of your interpretations of the pwcompare results correct, but one is based on a model that includes interaction effects and one is not. So, which model to choose is up to you, but it sounds like you want the model with the interactions and the atmeans options.

            Perhaps it will be easier to step back and visualize the effect of weight and diabetes across levels of black. In the first graph (with no interactions), the curves are closer to parallel. In the second graph (with interactions), the curves deviate from parallel, which points to the interaction effects. Note that pwcompare is essentially comparing the slopes of these curves.

            Code:
            webuse nhanes2f, clear
            
            probit diabetes i.black c.weight, nolog
            margins black, at(weight=(30(1)175))
            marginsplot, noci
            margins black, dydx(weight)
            margins black, dydx(weight) pwcompare
            
            webuse nhanes2f, clear
            probit diabetes i.black##c.weight, nolog
            margins black, at(weight=(30(1)175))
            marginsplot, noci
            margins black, dydx(weight)
            margins black, dydx(weight) pwcompare
            Note that if the interaction terms are zero or null in the probit model, then the estimates should converge anyway. For example, with orace, the curves are basically parallel even with interaction terms, and the contrast in slopes is non-significant:

            Code:
            webuse nhanes2f, clear
            
            probit diabetes i.orace c.weight, nolog
            margins orace, at(weight=(30(1)175))
            marginsplot, noci
            margins orace, dydx(weight)
            margins orace, dydx(weight) pwcompare
            
            webuse nhanes2f, clear
            probit diabetes i.orace##c.weight, nolog
            margins orace, at(weight=(30(1)175))
            marginsplot, noci
            margins orace, dydx(weight)
            margins orace, dydx(weight) pwcompare
            Last edited by Jenny Williams; 29 Jun 2020, 09:31.

            Comment


            • #7
              Jenny, Richard thank you so much for taking the time. It is all much clearer now and I appreciate very much you help.

              Comment

              Working...
              X