Announcement

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

  • Difficulty interpreting results (xtlogit in combination with marginal effects)

    Hi,

    I ran the following command on my panel data:

    Code:
    xtlogit A B C D E F G logH
    And got the following result:

    PHP Code:
           A |      Coef.   StdErr.      z    P>|z|     [95ConfInterval]
    ----------------------+----------------------------------------------------------------
            
    |  -.0106103   .0016808    -6.31   0.000    -.0139045    -.007316
            C 
    |  -.0250802   .0105435    -2.38   0.017    -.0457451   -.0044154
            D 
    |  -.6328279   .1144142    -5.53   0.000    -.8570757   -.4085802
            E 
    |  -.0107726   .0018946    -5.69   0.000    -.0144859   -.0070592
            F 
    |  -.0005993   .0029046    -0.21   0.837    -.0062923    .0050937
            G 
    |   .0024517   .0038712     0.63   0.527    -.0051358    .0100391
         logH 
    |   .9919885   .2078777     4.77   0.000     .5845557    1.399421
        _cons 
    |  -17.61147    1.14188   -15.42   0.000    -19.84952   -15.37343
    ----------------------+---------------------------------------------------------------- 
    As I would like to interpret the results, I used the following command for marginal effects:

    Code:
    margins, dydx(*) predict(pu0) nose
    Nose was used to save time as it is a big dataset, will compute it during the night for standard errors. This is the result:

    PHP Code:
    ----------------------------------------------------------------------------------
              |      
    dy/dx
    ----------------------+----------------------------------------------------------------
            
    |  -5.94e-06
            B 
    |   -.000014
            C 
    |  -.0003541
            D 
    |  -6.03e-06
            E 
    |  -3.35e-07
            F 
    |   1.37e-06
         logH 
    |   .0005551
    --------------------------------------------------------------------------------------- 

    Due to the scientific notation of the coefficients, I am not confident in how to interpret my results. I have a preference towards using margins at the mean value of the variable, but using the code mfx, at(mean) nose does not give the needed result as this is related to a linear prediction. To me it would make more sense to use marginal effects in combination with the mean of the variable.

    Is there a way to make more sense of the marginal effects and a possibility to include mean values? I've looked at many topics on the forum and watched several videos on YouTube, but so far I was unable to find a question for my answer.

    Thank you in advance,

    Django

  • #2
    Suprisingly,

    I tested the following command:

    Code:
    margins, dydx(*) predict(pu0) atmeans nose
    And got the following result at their mean value (I haven't copied the mean value):

    PHP Code:
    --------------------------------------------------------------------
              |      
    dy/dx
    ----------------------+----------------------------------------------------------------
            
    |   -2.21e-11
            C 
    |   -5.22e-11
            D 
    |   -1.32e-09
            E 
    |   -2.24e-11
            F 
    |   -1.25e-12
            G 
    |    5.10e-12
         logH 
    |    2.06e-09
    --------------------------------------------------------------------------------------- 
    I am pleased to get a more suiting result, but still struggle to make sense of the scientific notation. Is there someone who is willing to shine a light on my situation?

    Thank you,

    Django
    Last edited by Django Conradi; 11 Oct 2021, 05:13.

    Comment


    • #3
      If the notation is the problem have a look here: https://www.calculatorsoup.com/calcu...-converter.php

      I think the results are quite strange, especially from post 2, since as all these numbers are extremely small (like 0.0000001, very close to zero). Can this be right? If so, these numbers are probably not statistically significant (but we need the SEs to assess this). Do these numbers have any practical significance for you? This depends a lot on the variables used and the research question.
      Best wishes

      (Stata 16.1 MP)

      Comment


      • #4
        Hi Felix,

        Thank you for your answer!

        PHP Code:
        Conditional marginal effects                    Number of obs     =    x

        Expression   
        Pr(A=u_i=0), predict(pu0)
        dy/dx w.r.t. : B C D E F G logH
        at           
        B    =    276.7203 (mean)
                       
        C    =    47.34116 (mean)
                       
        D    =    .6085849 (mean)
                       
        E    =    182.7008 (mean)
                       
        F    =    44.60029 (mean)
                       
        G    =    35.05394 (mean)
                       
        logH  =     4.07044 (mean)

        ---------------------------------------------------------------------------------------
                  |      
        dy/dx
        ----------------------+----------------------------------------------------------------
                
        |   -2.21e-11
                C 
        |   -5.22e-11
                D 
        |   -1.32e-09
                E 
        |   -2.24e-11
                F 
        |   -1.25e-12
                G 
        |    5.10e-12
             logH 
        |    2.06e-09
        --------------------------------------------------------------------------------------- 
        While typing this reply, I ran the following command:

        Code:
        margins, dydx(*) predict(pu0) atmeans
        This is without nose and gave surprisingly quick the following feedback:

        Warning: variance matrix is nonsymmetric or highly singular

        The problem will probably lie in the warning above, will dive into it right away.

        Django

        Comment


        • #5
          Apparently, something is wrong with the model. Since we know nothing about the details, we cannot give advice. I would suggest starting with a simple model (using only one control variable) and then build it up from there.
          Best wishes

          (Stata 16.1 MP)

          Comment


          • #6
            Thank you Felix,

            Currently im rerunning my model and marginal effects, I'm adding one independent variable at a time.

            Thinking about your earlier question, the model is about predicting the probability of non-performance of a mortgage. Since the share of non-performing mortgages is only 0,03% of the total database, I can imagine that the impact of my variables are very, very low. Is there a way to address this issue? Might transforming to log or odds?

            Apologies for the many questions,

            Django

            Comment


            • #7
              Since the event of my dep. variable (dep. var = 1) is very rare in the dataset, a<1000 occurrences out of b>600k observations, the estimation results will be low and the marginal effects of the variables will be close to zero.

              Is there a way to address this issue? Reproducing my steps with firthlogit, logistic regression for rare events, does not solve the issue.
              Even though the probability on occurrence is very low, I have the goal to give meaning to the dataset by answering the effect changes and differences in my independent variables could have on the probability.

              Thank you in advance,

              Django

              Comment


              • #8
                Any suggestions?

                Comment

                Working...
                X