catégoriser une variable la fait passer d’insignifiant à significatif

17

J'ai une variable numérique qui s'avère non significative dans un modèle de régression logistique multivariée. Cependant, lorsque je le classe en groupes, il devient soudainement significatif. C'est très contre-intuitif pour moi: lors de la catégorisation d'une variable, nous renonçons à certaines informations.

Comment se peut-il?

Omry Atia
la source

Réponses:

25

Une explication possible serait la non-linéarité de la relation entre votre résultat et le prédicteur.

Voici un petit exemple. Nous utilisons un prédicteur uniforme sur [-1,1] . Le résultat, cependant, ne dépend pas linéairement du prédicteur, mais du carré du prédicteur: VRAI est plus probable pour X-1 et X1 , mais moins probable pour X0 . Dans ce cas, un modèle linéaire apparaîtra insignifiant, mais couper le prédicteur en intervalles le rend significatif.

> set.seed(1)
> nn <- 1e3
> xx <- runif(nn,-1,1)
> yy <- runif(nn)<1/(1+exp(-xx^2))
> 
> library(lmtest)
> 
> model_0 <- glm(yy~1,family="binomial")
> model_1 <- glm(yy~xx,family="binomial")
> lrtest(model_1,model_0)
Likelihood ratio test

Model 1: yy ~ xx
Model 2: yy ~ 1
  #Df  LogLik Df  Chisq Pr(>Chisq)
1   2 -676.72                     
2   1 -677.22 -1 0.9914     0.3194
> 
> xx_cut <- cut(xx,c(-1,-0.3,0.3,1))
> model_2 <- glm(yy~xx_cut,family="binomial")
> lrtest(model_2,model_0)
Likelihood ratio test

Model 1: yy ~ xx_cut
Model 2: yy ~ 1
  #Df  LogLik Df  Chisq Pr(>Chisq)  
1   3 -673.65                       
2   1 -677.22 -2 7.1362    0.02821 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Cependant, cela ne signifie pas que discrétiser le prédicteur est la meilleure approche. (Il ne l'est presque jamais.) Il vaut mieux modéliser la non-linéarité à l'aide de ou similaires.

S. Kolassa - Réintégrer Monica
la source
Y a-t-il des exemples où la discrétisation pourrait être judicieuse? Par exemple, si vous avez un seuil spécifique (par exemple 18 ans) auquel un changement binaire dans les résultats se produit. L'âge numérique dans la gamme 18+ peut ne pas être significatif, mais l'âge binaire> 18 peut être significatif?
ajrwhite
3
@ajrwhite: cela dépend du domaine. Partout où les seuils sont codifiés dans la discrétisation de la loi pourrait avoir un sens. Par exemple, si vous modélisez le comportement de vote, il est logique de vérifier si quelqu'un est réellement éligible pour voter à 18 ans. De même, en Allemagne, votre taxe sur les véhicules dépend de la cylindrée de votre moteur et saute à 1700, 1800, 1900, ... ccm , donc à peu près toutes les voitures ont des déplacements de 1699, 1799, ... ccm (sorte d'auto-discrétisation). Dans les sciences naturelles comme la biologie, la médecine, la psychologie, etc., j'ai du mal à trouver un exemple où la discrétisation a du sens.
S.Kolassa - Rétablir Monica
7

Une façon possible est si la relation est nettement non linéaire. Il n'est pas possible de dire (étant donné le manque de détails) si cela explique vraiment ce qui se passe.

Vous pouvez vérifier par vous-même. Tout d'abord, vous pouvez créer un tracé de variable supplémentaire pour la variable en tant que telle, et vous pouvez également tracer les effets ajustés dans la version factorielle du modèle. Si l'explication est juste, les deux devraient voir un motif distinctement non linéaire.

Glen_b -Reinstate Monica
la source