Interprétation de la régression logistique ordinale

17

J'ai exécuté cette régression logistique ordinale dans R:

mtcars_ordinal <- polr(as.factor(carb) ~ mpg, mtcars)

J'ai obtenu ce résumé du modèle:

summary(mtcars_ordinal)

Re-fitting to get Hessian

Call:
polr(formula = as.factor(carb) ~ mpg, data = mtcars)

Coefficients:
      Value Std. Error t value
mpg -0.2335    0.06855  -3.406

Intercepts:
    Value   Std. Error t value
1|2 -6.4706  1.6443    -3.9352
2|3 -4.4158  1.3634    -3.2388
3|4 -3.8508  1.3087    -2.9425
4|6 -1.2829  1.3254    -0.9679
6|8 -0.5544  1.5018    -0.3692

Residual Deviance: 81.36633 
AIC: 93.36633 

Je peux obtenir les cotes logarithmiques du coefficient mpgcomme ceci:

exp(coef(mtcars_ordinal))
 mpg 
0.7917679 

Et les cotes du journal des seuils comme:

exp(mtcars_ordinal$zeta)

       1|2         2|3         3|4         4|6         6|8 
0.001548286 0.012084834 0.021262900 0.277242397 0.574406353 

Quelqu'un pourrait-il me dire si mon interprétation de ce modèle est correcte:

À mpgmesure que la valeur augmente d'une unité, les chances de passer de la catégorie 1 carbà l'une des 5 autres catégories diminuent de -0,23. Si la cote du journal dépasse le seuil de 0,0015, la valeur prévue pour une voiture sera de catégorie 2 carb. Si la cote du journal dépasse le seuil de 0,0121, la valeur prédite pour une voiture sera de catégorie 3 carb, et ainsi de suite.

luciano
la source

Réponses:

10

Vous avez parfaitement confondu les cotes et les cotes de journal. Les cotes de log sont les coefficients; les cotes sont des coefficients exponentiels. De plus, l'interprétation des cotes va dans l'autre sens . (J'ai grandi avec l'économétrie en pensant aux variables dépendantes limitées, et l'interprétation des cotes de la régression ordinale est ... euh ... amusante pour moi.) Donc, votre première déclaration devrait se lire: "Comme les mpg augmentations d'une unité, les cotes d'observer la catégorie 1 de carb vs 5 autres catégories augmenter de 21%. "

En ce qui concerne l'interprétation des seuils, il faut vraiment tracer toutes les courbes prédites pour pouvoir dire quelle est la prédiction modale:

mpg   <- seq(from=5, to=40, by=1)
xbeta <- mpg*(-0.2335)
logistic_cdf <- function(x) {
  return( 1/(1+exp(-x) ) )
}

p1 <- logistic_cdf( -6.4706 - xbeta )
p2 <- logistic_cdf( -4.4158 - xbeta ) - logistic_cdf( -6.4706 - xbeta )
p3 <- logistic_cdf( -3.8508 - xbeta ) - logistic_cdf( -4.4158 - xbeta )
p4 <- logistic_cdf( -1.2829 - xbeta ) - logistic_cdf( -3.8508 - xbeta )
p6 <- logistic_cdf( -0.5544 - xbeta ) - logistic_cdf( -1.2829 - xbeta )
p8 <- 1 - logistic_cdf( -0.5544 - xbeta )

plot(mpg, p1, type='l', ylab='Prob')
  lines(mpg, p2, col='red')
  lines(mpg, p3, col='blue')
  lines(mpg, p4, col='green')
  lines(mpg, p6, col='purple')
  lines(mpg, p8, col='brown')
  legend("topleft", lty=1, col=c("black", "red", "blue", "green", "purple", "brown"), 
         legend=c("carb 1", "carb 2", "carb 3", "carb 4", "carb 5", "carb 6"))

entrez la description de l'image ici

La courbe bleue de la 3e catégorie n'a jamais repris, pas plus que la courbe violette de la 6e catégorie. Donc, si quelque chose je dirais que pour les valeurs mpgsupérieures à 27, la catégorie la plus probable est 1; entre 18 et 27 ans, catégorie 2; entre 4 et 18 ans, catégorie 4; et en dessous de 4, catégorie 8. (Je me demande ce que vous étudiez - les camions commerciaux? La plupart des voitures particulières devraient de nos jours avoir mpg> 25). Vous voudrez peut-être essayer de déterminer plus précisément les points d'intersection.

J'ai également remarqué que vous avez ces catégories étranges qui vont de 1, 2, 3, 4, puis 6 (en sautant 5), puis 8 (en sautant 7). Si 5 et 7 manquaient par conception, c'est très bien. Si ce sont des catégories valides qui carbne correspondent tout simplement pas, ce n'est pas bon.

StasK
la source
Notez comment j'ai utilisé "passer de la catégorie 1 de glucides à l'une des 5 autres catégories". Est-ce mal? J'ai du mal à maîtriser "Lorsque le mpg augmente d'une unité, les chances d'observer la catégorie 1 de glucides par rapport aux 5 autres catégories augmentent de 21%.". Cela implique que si le mpg augmente d'environ 5 unités, il y aura 100% de chances d'observer la catégorie 1. Mais si le mpg a augmenté de 5 unités, il devrait y avoir une chance plus élevée d'observer la catégorie 8, pas la catégorie 1.
luciano
3
J'ai ajouté le chiffre; Je soupçonnais que cela rendrait votre réponse plus facile à interpréter - j'espère qu'elle vous plaira. (BTW, la documentation de ? Mtcars indique que les données sont les résultats des tests d'un numéro de 1974 de Motor Trends .)
gung - Reinstate Monica
Quelqu'un pourrait-il répondre à la dernière question de Luciano? Je trouve cela très intéressant.
Erosennin
1
mpg23134515
1
Comme le polrdéfinit le modèle logit P(Y <= k | x) = zeta_k - eta, si l'interprétation de @ StasK ne se lisait pas, "à mesure que les mpg augmentations d'une unité, les chances d'observer la catégorie 1 de carb vs 5 autres catégories augmentent de 26% ( exp(-(-0.2335)) = 1.26)."
moremo
3

Dans le modèle logit ordonné, les cotes forment le rapport entre la probabilité d'être dans une catégorie inférieure à un seuil spécifique et la probabilité d'être dans une catégorie supérieure au même seuil (par exemple, avec trois catégories: probabilité d'être dans la catégorie A ou B vs C, ainsi que la probabilité d'être dans la catégorie A vs B ou C).

Cela conduit au modèle logit P(Y <= k | x) = zeta_k - etatel que spécifié dans la description de polr(). Par conséquent, les rapports de cotes peuvent être créés pour différentes catégories ou pour différents régresseurs. Ce dernier, le plus courant, compare les cotes pour les mêmes catégories mais des régresseurs différents et est égal

os(yunek|Xune)os(ybk|Xb) = exp(-(ηune-ηb)).

Le rapport de cotes pour différentes catégories est défini comme

os(yjek|Xje)os(yjem|Xje) = exp(ζk-ζm),

où le rapport est indépendant des régresseurs. Cette propriété conduit à l'autre modèle de cotes proportionnelles de nom .

Dans cet exemple simple, mais peut-être pas très intuitif, vous pourriez formuler: Pour une augmentation d'une unité dans le régresseur mpg, les chances d'observer la catégorie 1 vs d'observer toute catégorie supérieure (ou les chances d'observer n'importe quelle catégorie en dessous d'un certain seuil vs. observant toute catégorie au-dessus du même seuil) sont multipliés par 1,26 ou augmentés de 26% ( exp(-(-0.233 - 0)) = 1.263). Si vous souhaitez formuler un rapport de cotes de différentes catégories, vous pouvez, par exemple, dire que les chances d'être dans la catégorie 1 par rapport à n'importe quelle catégorie ci-dessus par rapport aux chances d'être en catégorie 1 ou 2 par rapport à toute catégorie ci-dessus sont égales à exp((-6.470) - (-4.415)) = 0.128. Cette dernière interprétation n'est donc pas très utile dans cette configuration spécifique. Un exemple d'un rapport de cotes pour différentes catégories pourrait être les chances d'aller au collège par rapport aux chances d'aller au lycée.

(ζk-ζk-1)k

moremo
la source