Les posteurs les plus actifs de la semaine
Aucun utilisateur |
Sujets les plus vus
glmer
2 participants
Page 1 sur 1
glmer
Bonjour,
Je cherche à analyser d'influence de différents paramètres (variables qualitatives) sur la croissance (variable quantitative) de différents individus (plantes). La croissance est obtenue par la différence entre le nombre de feuilles à T1 et à T0, ce qui me donne finalement un nombre de feuilles gagnées (nombre positif ou nul).
Mon jeu de données est constitué de la façon suivante :
Individu
Substrat (= substrat de culture des plantes) : terreau/naturel
Site (= site d'origine des populations) : SA/B/V
Génération (= date de récolte des graines) : 1950/2000
Nombre de feuilles gagnées pour chaque plant
J'ai au total six populations de plantes (trois sites d'origine X deux générations à chaque fois) et ces six populations sont cultivées à la fois en terreau et en sol naturel.
Les résidus sont non normaux (vérification pour chaque groupe). Grâce aux réponses à ma question précédente un peu similaire, je me suis dirigée vers glm avec "individu" en effet aléatoire :
glm2<-glmer(feuilles~site+substrat+generation+(1|individu), family=poisson("log"), data=F_gap)
Première question : par défaut le glmer fait un "Laplace approximation" mais j'aimerais faire un test de Wald car le nombre moyen de mes observations est >5 (choix d'après Bolker et al., 2008 : generalized linear mixed models: a pratical guide for ecology and evolution).
Je ne connais pas ce test et j'ai du mal à comprendre que signifie l'argument "Terms". J'ai essayé plusieurs chiffres (dont la taille de la matrice vcov) et j'obtiens l'erreur suivante : Error in `[<-`(`*tmp*`, i, Terms[i], value = 1) : subscript out of bounds. Pouvez-vous m'éclairer sur cet argument ?
Deuxième question : les résidus du glm ne suivent pas une loi normale, mais sont compris entre -2 et 2. Doivent-ils suivre une loi normale pour valider le modèle ?
Et une dernière : j'ai également testé un modèle avec interaction des effets :
glm1<-glmer(feuilles~site*substrat*generation*(1|individu), family=poisson("log"), data=F_gap).
Et là, le drame... Le modèle "échoue à converger" : Model failed to converge with max|grad| = 0.0158484 (tol = 0.001, component 1). Que signifie cette erreur ? Le modèle est-il non valide ? Y a-t-il d'autres vérifications à faire pour s'en assurer ?
Merci pour votre aide !
Je cherche à analyser d'influence de différents paramètres (variables qualitatives) sur la croissance (variable quantitative) de différents individus (plantes). La croissance est obtenue par la différence entre le nombre de feuilles à T1 et à T0, ce qui me donne finalement un nombre de feuilles gagnées (nombre positif ou nul).
Mon jeu de données est constitué de la façon suivante :
Individu
Substrat (= substrat de culture des plantes) : terreau/naturel
Site (= site d'origine des populations) : SA/B/V
Génération (= date de récolte des graines) : 1950/2000
Nombre de feuilles gagnées pour chaque plant
J'ai au total six populations de plantes (trois sites d'origine X deux générations à chaque fois) et ces six populations sont cultivées à la fois en terreau et en sol naturel.
Les résidus sont non normaux (vérification pour chaque groupe). Grâce aux réponses à ma question précédente un peu similaire, je me suis dirigée vers glm avec "individu" en effet aléatoire :
glm2<-glmer(feuilles~site+substrat+generation+(1|individu), family=poisson("log"), data=F_gap)
Première question : par défaut le glmer fait un "Laplace approximation" mais j'aimerais faire un test de Wald car le nombre moyen de mes observations est >5 (choix d'après Bolker et al., 2008 : generalized linear mixed models: a pratical guide for ecology and evolution).
Je ne connais pas ce test et j'ai du mal à comprendre que signifie l'argument "Terms". J'ai essayé plusieurs chiffres (dont la taille de la matrice vcov) et j'obtiens l'erreur suivante : Error in `[<-`(`*tmp*`, i, Terms[i], value = 1) : subscript out of bounds. Pouvez-vous m'éclairer sur cet argument ?
Deuxième question : les résidus du glm ne suivent pas une loi normale, mais sont compris entre -2 et 2. Doivent-ils suivre une loi normale pour valider le modèle ?
Et une dernière : j'ai également testé un modèle avec interaction des effets :
glm1<-glmer(feuilles~site*substrat*generation*(1|individu), family=poisson("log"), data=F_gap).
Et là, le drame... Le modèle "échoue à converger" : Model failed to converge with max|grad| = 0.0158484 (tol = 0.001, component 1). Que signifie cette erreur ? Le modèle est-il non valide ? Y a-t-il d'autres vérifications à faire pour s'en assurer ?
Merci pour votre aide !
leab- Nombre de messages : 4
Date d'inscription : 01/02/2018
Re: glmer
Je ne suis pas sûr de bien comprendre. Pour chaque individu, vous faites une mesure (variation entre T0 et T1). Vous n'avez donc qu'une seule valeur par individu. Comment alors le facteur "individu" peut-il être entré dans le modèle comme facteur aléatoire ? Il y a quelque chose qui m'échappe ici.
Par ailleurs, un test de Wald fonctionne "paramètre par paramètre" et n'est ni très puissant, ni recommandé. Vous devriez partir sur des tests de rapport de vraisemblance, et la fonction anova() de R fait ca très bien, et très facilement.
Enfin, vous ajustez une régression log-linéaire (sur données de comptage, Poisson). On n'est plus dans le monde gaussien ici, et les résidus ne doivent pas (et ne peuvent pas) suivre des lois normales.
Résoudre déjà ces quelques points devrait faire progresser les choses, je pense.
HTH, Eric.
Par ailleurs, un test de Wald fonctionne "paramètre par paramètre" et n'est ni très puissant, ni recommandé. Vous devriez partir sur des tests de rapport de vraisemblance, et la fonction anova() de R fait ca très bien, et très facilement.
Enfin, vous ajustez une régression log-linéaire (sur données de comptage, Poisson). On n'est plus dans le monde gaussien ici, et les résidus ne doivent pas (et ne peuvent pas) suivre des lois normales.
Résoudre déjà ces quelques points devrait faire progresser les choses, je pense.
HTH, Eric.
Eric Wajnberg- Nombre de messages : 1238
Date d'inscription : 14/09/2012
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum