Mauvais signe dans le coefficient de régression?

Sep 02 2020

J'ai obtenu ces résultats extrêmement déconcertants dans mon modèle de régression logistique. "New.Regs" est une variable fictive indiquant si une observation est intervenue après l'adoption d'une certaine loi.

Les coefficients du modèle d'interaction sont extrêmement grands. Sans l'interaction, la variable la plus importante "New.Regs" est le mauvais signe et a un odds ratio inférieur à 1 alors qu'en réalité elle a un effet positif. Ces résultats ne sont pas un symptôme de séparation complète (j'ai vérifié), et j'ai également essayé un lissage non paramétrique pour la variable Years (qui est codée en décimal, ce qui signifie qu'une observation pourrait par exemple être 2,7345 ans après la première observation) mais obtenir le mêmes résultats. De plus, la comparaison des modèles anova ne montre aucune preuve de non-linéarité des années. Aussi, n = 250 avant la loi et n = 40 après la loi.

Des idées? Certains résultats sont ci-dessous. Je sais que le graphique n'utilise pas la courbe logit mais vous voyez l'idée.

Modèle avec interaction: glm (formule = Quantified ~ New.Regs * Years, family = binomial (link = "logit"), data = fws)

Coefficients:
                Estimate Std. Error z value Pr(>|z|)    
(Intercept)      -1.5728     0.3260  -4.824 1.40e-06 ***
New.Regs       -126.1103    44.7100  -2.821  0.00479 ** 
Years             0.2359     0.0547   4.314 1.61e-05 ***
New.Regs:Years   12.7242     4.5394   2.803  0.00506 ** 
AIC: 368.2

Modèle sans interaction:

glm(formula = Quantified ~ New.Regs + Years, family = binomial(link = "logit"), data = fws)

Coefficients:
                                              Estimate Std. Error z value Pr(>|z|)    
(Intercept)                                   -2.94915    0.67265  -4.384 1.16e-05 ***
New.Regs                                      -1.25529    0.53753  -2.335  0.01953 *  
Years                                          0.38922    0.07473   5.209 1.90e-07 ***
---

    Null deviance: 399.19  on 290  degrees of freedom
Residual deviance: 303.64  on 272  degrees of freedom
AIC: 341.64

Modèle avec seulement une variable fictive, pas de variable de temps:

Call:
glm(formula = Quantified ~ New.Regs, 
    family = binomial(link = "logit"), data = fws)

Coefficients:
                                              Estimate Std. Error z value Pr(>|z|)    
(Intercept)                                   -0.98523    0.50487  -1.951  0.05100 .  
New.Regs                                       0.38726    0.41240   0.939  0.34771   

Residual deviance: 335.95  on 273  degrees of freedom
AIC: 371.95

Réponses

3 NickCox Sep 02 2020 at 15:11

Le lissage non paramétrique, bien que souvent une bonne idée, n'est ici qu'une distraction, du moins avec vos choix de bande passante.

Les résultats semblent moins déroutants si vous

  • rappelez-vous qu'une grande constante négative dans un modèle logit signifie en elle-même une très petite probabilité prédite

  • et surtout tracer les prédictions.

En supposant que votre intervalle de temps en années est compris entre 0 et environ 11, j'obtiens ces courbes à partir de vos estimations:

J'espère que cela aide. Facile à dire, mais difficile à corriger: vous ne disposez que de quelques données après l'adoption de la loi. Malgré les valeurs P rapportées, je dois m'interroger sur l'ajustement excessif ici.