surdispersion

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

bill tresor
Messages : 9
Enregistré le : 10 Nov 2009, 18:35

surdispersion

Messagepar bill tresor » 10 Nov 2009, 19:03

Bonjour,
j ai fait un GLM sur mes données(il s'agit d'une enquête auprès des ménages dans certains quartiers d'une ville ma variable à expliquer est binaire),après avoir utiliser un test d'adéquation (celui de Hosmer L donc le code est sur ce site) je trouve une p-value de 0.21 .la conclusion je crois c'est que le modèle est adéquat cependant avec une p-value assez petite je crois qu'il reste encore à faire ou bien?.Autour de moi on ma conseillé de voir s'il y'a pas de surdispersion, je voudrais savoir comment sur R on peut faire un test de surdispersion? et en cas de surdispersion quel modele je pourais utiliser pour corriger cette surdispersion?

merci d'avance

Tresor

Samir Messad
Messages : 76
Enregistré le : 10 Jan 2005, 20:56

Messagepar Samir Messad » 12 Nov 2009, 10:00

Bonjour,

une façon de vérifier la surdispersion est de contrôler l'égalité des deux quantités suivantes : statistique du chi 2 du modèle :

Code : Tout sélectionner

sum(residuals(modele, type"pearson")^2)
et nb de ddl des résidus donné par le modèle logistique. Il faut travailler avec des données binomiales regroupées par covariables.

Si il y a de la surdispersion, c'est qu'une partie de la variabilité n'est pas prise en compte par le modèle. Soit il manque qqchose dans le modèle, soit ce dernier n'est pas correct. Des facteurs importants oubliés, un effet d'aggrégation des données (facteur aléatoire), une distribution mal spécifiée dans le GLM (poisson plutôt que logit, voire beta-binomial).

Une fois le paramètre de surdispersion estimé, on peut eventuellement le prendre en compte dans le test de la signification des termes du modèle et le calcul de la variance des paramètres :

Code : Tout sélectionner

anova.glm(..., dispersion = , test ="F")
summary.glm(..., dispersion = , ...)


Cordialement.

Renaud Lancelot
Messages : 2484
Enregistré le : 16 Déc 2004, 08:01
Contact :

Messagepar Renaud Lancelot » 12 Nov 2009, 10:01

Le test de H&L manque beaucoup de puissance. Voir la biblio pour des alternatives. Je crois que les packages Hmisc / Design proposent des tests mieux adaptés, en relation avec leur fonction lrm.

Mais ça ne répond pas à la question de la surdispersion. Pas de réponse simple avec une variable binaire. Si possible, regrouper les données par profil de covariable et utiliser la distribution binomiale: vous aurez au moins la possibilité de tester la surdispersion avec la statistique de Pearson. Voir tout bon bouquin sur le modèle linéaire généralisé, et la réponse de Samir ci-dessus.

Personnellement, je me base sur le plan d'observation pour faire le choix du modèle: si observations groupées (par foyer, troupeau,...) je choisis un modèle tenant compte d'une éventuelle surdispersion, comme modèle bétabinomial par exemple. Bcp d'autres choix possibles.
Renaud

bill tresor
Messages : 9
Enregistré le : 10 Nov 2009, 18:35

Messagepar bill tresor » 13 Nov 2009, 11:57

merci beaucoup pour vos réponses,
je voudrais bien essayé le modèle beta-binomial, mais pour une variable d'intérêt binaire quel commande utilisé?j ai regardé dans le package aod la fonction betabin mais la forme de la variable réponse (cbind(y, n - y)) est différente de la mienne (qui est binaire).j'aimerais savoir svp quel fonction utiliser pour un modèle beta-binomial avec une réponse binaire?

merci encore pour vos réponses,



cordialement

Samir Messad
Messages : 76
Enregistré le : 10 Jan 2005, 20:56

Messagepar Samir Messad » 13 Nov 2009, 13:56

Bonjour,

Code : Tout sélectionner

library(aod)
?orob2


pour des détails sur les données groupées du type succès-échec.

Cordialement.

Renaud Lancelot
Messages : 2484
Enregistré le : 16 Déc 2004, 08:01
Contact :

Messagepar Renaud Lancelot » 13 Nov 2009, 17:18

bill tresor a écrit :merci beaucoup pour vos réponses,
je voudrais bien essayé le modèle beta-binomial, mais pour une variable d'intérêt binaire quel commande utilisé?j ai regardé dans le package aod la fonction betabin mais la forme de la variable réponse (cbind(y, n - y)) est différente de la mienne (qui est binaire).j'aimerais savoir svp quel fonction utiliser pour un modèle beta-binomial avec une réponse binaire?


Si la réponse est binaire, n = 1 dans tous les cas. Donc faire qque chose comme

Code : Tout sélectionner

cbind(y, 1 - y) ~ x1 + x2


où y est votre réponse binaire.
Renaud


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité