Announcement

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

  • Fixed effects ordered logit (feologit) with marginal effects

    Hello. I am running a fixed effects models with an interaction of a continuous and categorical variable. I hypothesize a moderation effect of some categories that alleviates a negative effect of my continuous variable. The outcomes is life satisfaction (thus ordered dependent in principle).

    My base model setup looks promising: My interaction terms are stat. sig. (as a first indication). Thus I check the marginal effect of my main regressor which is also significant. I further check this ME at representative values of my categorical variable (this is stat. sig.) and finally the difference of these AME of continous at representative of the categorical variable.


    Code:
    *******************************************************************************
    *** life satisfaction panel data
    * https://www.diw.de/documents/dokumentenarchiv/17/diw_01.c.412698.de/soep_lebensz_en.zip
    use soep_lebensz_en.dta
    xtset id year
    *******************************************************************************
    
    *******************************************************************************
    // BASE INTERACTION MODEL
    * run FE regression with interaction of continuous and "categorical" variable
    set more off
    xtreg satisf_org  c.education##c.education##no_kids, fe
    
    * average marginal effect of education is stat. sig.
    margins, dydx(education)
    * AME of education at representative values stat. sig.
    margins, dydx(education) at(no_kids = (0 1 2 3)) post
    
    * difference of AME is not significant (in this example) but for my data
    lincom _b[1bn._at] - _b[2._at]
    *******************************************************************************
    Next I want to do a robustness check with a nonlinear ordered model. I noticed the brand new community command feologit from:

    Baetschmann, G., Ballantyne, A., Staub, K. E., & Winkelmann, R. (2020). feologit: A new command for fitting fixed-effects ordered logit models. The Stata Journal, 20(2), 253-275.

    Code:
    *******************************************************************************
    // ROBUSTNESS CHECK: fixed effects ordered logit with "blow up cluster" (BUC)
    feologit satisf_org  c.education##c.education##no_kids, group(id)
    
    * I don't know exactly what this means.
    logitmarg, dydx(education)
    
    * I can also calculate this (but it's subject to special assumptions).
    margins, dydx(education)
    margins, dydx(education) at(no_kids = (0 1 2 3))  post
    lincom _b[1bn._at] - _b[2._at]
    *******************************************************************************
    I know from "help feologit postestimation" that "predict and margins contain assumptions about the fixed effects and will produce inconsistent estimates when these assumptions do not hold." As chapter 4.3 from the Journal says "estimates for MEs cannot generally be obtained".

    What can you recommend for conducting the robustness check and proceeding? Kind regards

  • #2
    You didn't get a quick answer. Some of the information we might want is simply not here – how many groups you have, sample size, how many values the dependent variable takes, etc.

    When you use a user provided program, you often find they don't mesh completely with the other parts of Stata. However, it is also quite possible that there is something statistically problematic with doing a fixed effects ordinal logit and marginal effects.

    Comment


    • #3
      Hi Phil, thank you for the notice.

      I analyse life satisfaction as in the minimal data, it is given on a scale from 0 to 10. My key explanatory variable is continuous and the interaction-categorical variable has 4 groups, for which I am interested in 2 out of 4 for theoretical reasons. My model structure thus looks like this:

      Code:
      local X "i.control1 i.control2 control3 control4 i.syear i.state"  
      xtreg satisf c.KEY##c.KEY##MODERATOR `X', i(pid) fe
      In my sample I have about 35.000 observations of about 15.000 people. Best regards
      Last edited by Marco Kuehne; 10 Sep 2020, 00:55.

      Comment


      • #4
        Hi Marco,

        I have come across this thread and I am having the same issue you outline above. I am curious if you were able to find a solution?

        Kind Regards,

        Hugo

        Comment


        • #5
          Hugo: What are your dimensions of N and T. Do you have a balanced panel?

          Comment

          Working...
          X