Forum de Statistiques
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Les posteurs les plus actifs de la semaine
Aucun utilisateur

Le deal à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

Fonction dispersiontest

2 participants

Aller en bas

Fonction dispersiontest Empty Fonction dispersiontest

Message par Pablo Bagnon Mar 4 Sep 2012 - 9:02

Bonjour!

Au cours de recherches sur le net, je suis tombé sur la fonction dispersiontest (modèle) mais je ne parviens pas à la trouver dans l'aide, peut-être nécessite-elle un package particulier?
Je me demande aussi si on peut utiliser cette fonction pour une simple variable afin d'analyser la dispersion des données brutes et pas seulement celles des résidus du modèle?

Mon objectif est de prouver par un test que mes données brutes sont assez "dispersées" pour les analyser à partir de la famille quasi-poisson et non pas poisson (un conseil qu'on m'a donné) dans un glm.

Merci pour vois réponses.

Pablo Bagnon

Nombre de messages : 6
Date d'inscription : 31/08/2012

Revenir en haut Aller en bas

Fonction dispersiontest Empty Re: Fonction dispersiontest

Message par droopy Mar 4 Sep 2012 - 9:56

Bonjour,

oui le package AER. Tu peux effectivement t'en servir pour une variable brute.
Il y a aussi un test pour savoir si tu dois plutôt partir sur du poisson ou du négative binomiale, je crois que c'est le test de vuong.
droopy
droopy

Nombre de messages : 1156
Date d'inscription : 04/09/2009

Revenir en haut Aller en bas

Fonction dispersiontest Empty Re: Fonction dispersiontest

Message par Pablo Bagnon Mar 4 Sep 2012 - 18:57

Ok merci beaucoup Droopy! Very Happy

Pablo Bagnon

Nombre de messages : 6
Date d'inscription : 31/08/2012

Revenir en haut Aller en bas

Fonction dispersiontest Empty Re: Fonction dispersiontest

Message par Pablo Bagnon Jeu 6 Sep 2012 - 8:47

Ok la fonction dispersiontest marche bien pour un modèle glm créé.

Code:
[font=Trebuchet MS]dispersiontest(glmAbca5)
Overdispersion test
data:  glmAbca5
z = 2.4085, p-value = 0.008009
alternative hypothesis: true dispersion is greater than 1
sample estimates:
dispersion
  11.05411
[/font]
Mais pas pour mes variables brutes, exemple :

Code:
[font=Trebuchet MS]dispersiontest(Abd.ca)
Erreur dans dispersiontest(Abd.ca) : only Poisson GLMs can be tested[/font]

On m'a dit que, si les résultats d'un glm montraient une déviance résiduelle plus importante que les degrés de liberté des résidus, alors les données initiales (brutes) étaient surdispersées.
Ce qui permettrait de justifier la modification du modèle pour l'ajuster aux données : changer de famille par exemple.
C'est mon cas : je réalise le même modèle mais avec la famille quasi-poisson à la place de la famille poisson, et mon modèle est acceptable.

Démonstration :
Code:
[font=Trebuchet MS]glmAbca5=glm(Abd.ca~Cod.ech,family=poisson(link=log),data=T23)
summary(glmAbca5)
...
Null deviance: 4970.2  on 119  degrees of freedom
Residual deviance: 1222.0  on 100  degrees of freedom
AIC: 1539.6[/font]

Si je transforme les données brutes avec log1p pour les rendre moins dispersées :
Code:
[font=Trebuchet MS]glmAbca55=glm(Abd.ca~Cod.ech,family=quasipoisson,data=T23)
summary(glmAbca55)
Il y a eu 50 avis ou plus (utilisez warnings() pour voir les 50 premiers)[/font]

En quasi-poisson + données brutes transformées avec log1p car sinon, modèle mauvais;
Code:
[font=Trebuchet MS]glmAbca55=glm(log1p(Abd.ca)~Cod.ech,family=quasipoisson,data=T23)
summary(glmAbca55)
...
Null deviance: 188.272  on 119  degrees of freedom
Residual deviance:  59.107  on 100  degrees of freedom
AIC: NA[/font]

Ajustement meilleur.


Dernière édition par A.D. le Mer 12 Sep 2012 - 14:35, édité 1 fois (Raison : balises "code")

Pablo Bagnon

Nombre de messages : 6
Date d'inscription : 31/08/2012

Revenir en haut Aller en bas

Fonction dispersiontest Empty Re: Fonction dispersiontest

Message par droopy Jeu 6 Sep 2012 - 12:48

Effectivement tes données semblent relativement sur-dispersées. L'ajustement est peut être meilleur dans le dernier modèle en terme de dispersion (il est même sous dispersé ici) mais ton modèle n'a plus de sens. Par défaut avec la famille quasipoisson le lien est un log. Donc tu modélises le log du log+1 ... On peut se poser la question du sens d'un tel modèle. Si c'est trop dispersée tu peux aussi t'orienter vers un modèle avec une loi négative binomiale, voir la fonction glm.nb du package MASS.
droopy
droopy

Nombre de messages : 1156
Date d'inscription : 04/09/2009

Revenir en haut Aller en bas

Fonction dispersiontest Empty Re: Fonction dispersiontest

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum