Comment interpréter les estimations des paramètres dans les résultats GLM de Poisson [fermé]


14
Call:
glm(formula = darters ~ river + pH + temp, family = poisson, data = darterData)

Deviance Residuals:
    Min      1Q   Median     3Q    Max
-3.7422 -1.0257   0.0027 0.7169 3.5347

Coefficients:
              Estimate Std.Error z value Pr(>|z|)
(Intercept)   3.144257  0.218646  14.381  < 2e-16 ***
riverWatauga -0.049016  0.051548  -0.951  0.34166
pH            0.086460  0.029821   2.899  0.00374 **
temp         -0.059667  0.009149  -6.522  6.95e-11 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for poisson family taken to be 1)
Null deviance: 233.68 on 99 degrees of freedom
Residual deviance: 187.74 on 96 degrees of freedom
AIC: 648.21

Je veux savoir comment interpréter chaque estimation de paramètre dans le tableau ci-dessus.



6
Cette question semble être hors sujet car il s'agit d'expliquer une sortie R sans aucune forme de question intelligente derrière. Il s'agit de la catégorie "Je vide ma sortie d'ordinateur là-bas et vous exécutez l'analyse des statistiques pour moi" ...
Xi'an

1
Votre paramètre de dispersion semble indiquer qu'il y a des problèmes avec votre modèle. Peut-être devriez-vous plutôt envisager d'utiliser une distribution quasipoisson. Je parie que vos estimations de paramètres changeront radicalement, de même que l'interprétation. Si vous exécutez "plot (model)", vous obtiendrez quelques tracés de vos résidus, regardez ces tracés pour les motifs indésirables avant de commencer à interpréter votre modèle réel. Pour tracer rapidement l'ajustement de votre modèle, vous pouvez également utiliser "visreg (modelfit)" du paquet visreg
Robbie

3
@ Xi'an, bien que la question soit clairsemée et nécessite des modifications, je ne pense pas que ce soit hors sujet. Considérez ces questions qui ne sont pas considérées hors sujet: Interprétation de la sortie lm () de R , et Interprétation de la sortie de R pour la régression binomiale . Il semble toutefois qu'il s'agisse d'un doublon .
gung - Rétablir Monica

2
Il s'agit d'un doublon de Comment interpréter les coefficients dans une régression de Poisson? Veuillez lire le fil lié. Si vous avez encore une question après avoir lu cela, revenez ici et modifiez votre question pour indiquer ce que vous avez appris et ce que vous devez encore savoir, alors nous pouvons fournir les informations dont vous avez besoin sans simplement dupliquer du matériel ailleurs qui n'a déjà pas aidé vous.
gung - Rétablir Monica

Réponses:


28

Je ne pense pas que le titre de votre question reflète précisément ce que vous demandez.

La question de savoir comment interpréter les paramètres dans un GLM est très large car le GLM est une classe très large de modèles. Rappelons qu'un GLM modélise une variable de réponse y supposée suivre une distribution connue de la famille exponentielle, et que nous avons choisi une fonction inversible telle que E [ yg pour J variables prédictives x . Dans ce modèle, l'interprétation de tout paramètre particulier β j est le taux de variation de g ( y ) par rapport à x j

E[y|x]=g1(x0+x1β1++xJβJ)
Jxβjg(y)xj . Définissez etηxβpour garder la notation propre. Alors, pour toutj{1,,J}, β j =μE[y|x]=g1(x)ηxβj{1,,J} Définissons maintenantejcomme un vecteur deJ-1zéros et un seul1enjème position, de sorte que par exemple siJ=5alorse3=(0,0,1,0,0). Alors βj=g(E [ y
βj=ηxj=g(μ)xj.
ejJ11jJ=5e3=(0,0,1,0,0)
βj=g(E[y|x+ej])g(E[y|x])

Ce qui signifie simplement que est l'effet sur η d'une augmentation unitaire deβjη .xj

Vous pouvez également énoncer la relation de cette manière: et E

E[y|x]xj=μxj=dμdηηxj=μηβj=dg1dηβj
E[y|x+ej]E[y|x]Δjy^=g1((x+ej)β)g1(xβ)

Sans rien savoir de , c'est aussi loin que nous pouvons obtenir. β j est l'effet sur η , sur la moyenne conditionnelle transformée de y , d'une augmentation unitaire de x j , et l'effet sur la moyenne conditionnelle de y d'une augmentation unitaire de x j estgβjηyxjyxjg1(β) .


yPoisson(λ)g=ln . Ensuite, nous pouvons obtenir une certaine traction par rapport à une interprétation spécifique.

μxj=dg1dηβjg(μ)=ln(μ)g1(η)=eηdeηdη=eη

μxj=E[y|x]xj=ex0+x1β1++xJβJβj

ce qui signifie enfin quelque chose de tangible:

xjy^y^βj

Remarque: cette approximation peut réellement fonctionner pour des modifications aussi importantes que 0,2, selon la précision dont vous avez besoin.

Δjy^=ex0+x1β1++(xj+1)βj++xJβJex0+x1β1++xJβJ=ex0+x1β1++xJβJ+βjex0+x1β1++xJβJ=ex0+x1β1++xJβJejβex0+x1β1++xJβJ=ex0+x1β1++xJβJ(ejβ1)
which means

Given a unit change in xj, the fitted y^ changes by y^(ejβ1).

There are three important pieces to note here:

  1. The effect of a change in the predictors depends on the level of the response.
  2. An additive change in the predictors has a multiplicative effect on the response.
  3. You can't interpret the coefficients just by reading them (unless you can compute arbitrary exponentials in your head).

So in your example, the effect of increasing pH by 1 is to increase lny^ by y^(e0.091); that is, to multiply y^ by e0.091.09. It looks like your outcome is the number of darters you observe in some fixed unit of time (say, a week). So if you're observing 100 darters a week at a pH of 6.7, raising the pH of the river to 7.7 means you can now expect to see 109 darters a week.


I made a couple tweaks here, @ssdecontrol. I think they'll make your post a little easier to follow, but if you don't like them, roll them back with my apologies.
gung - Reinstate Monica

I you can't figure that out from my answer then clearly I need to revise the answer. What are you still confused about?
shadowtalker

Plug those numbers into the equation just like in linear regression
shadowtalker

1
@skan no, I mean E[y|x]. x and y are random variables representing to a single observation. x is a vector indexed by j; xj is the random variable representing a specific feature/regressor/input/predictor for that observation.
shadowtalker

2
And don't overthink it. Once you understand all the pieces in a GLM, the manipulations here are just a direct application of calculus principles. It really is as simple as taking the derivative with respect to the variable you're interested in.
shadowtalker

3

My suggestion would be to create a small grid consisting of combinations of the two rivers and two or three values of each of the covariates, then use the predict function with your grid as newdata. Then graph the results. It is much clearer to look at the values that the model actually predicts. You may or may not want to back-transform the predictions to the original scale of measurement (type = "response").


1
As much as I like this approach (I do it all the time) I think it's counterproductive for building understanding.
shadowtalker
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.