Les posteurs les plus actifs de la semaine
Aucun utilisateur |
Sujets les plus vus
Quelle distribution pour ma variable ?
3 participants
Page 1 sur 1
Quelle distribution pour ma variable ?
Bonjour !
J'étudie une variable Y dépendante qui a une distribution un peu particulière : elle est composée de 307 observations, dont les valeurs s'étendent de -0.05 à 0.25 (donc aussi bien dans les positifs que les négatifs), elle ressemble à s'y méprendre à une distribution gaussienne entre -0.05 et 0.05, mais elle a une longue queue au-delà de 0.1, que je ne peux pas me permettre de retirer par souci de pertinence (ces 30 valeurs extrêmes ont une forte signification dans mon étude, aussi rares soient-elles).
Mon problème est le suivant : mes données ne suivent pas une loi gaussienne (Shapiro-Wilk est formel), et quelle que soit la transformation que je leur fait subir (log, log+1, sqrt, carré, boxCox, boxCox spécial valeurs négatives, etc...), rien n'y fait : je n'ai pas normalité.
J'ai donc décidé de passer à une analyse non-paramétrique, mais pour mon glm, j'ai besoin de spécifier la famille de distribution dont ma variable se rapproche le plus (si je ne dis pas de bêtise).
Vu que je viens à peine de rejoindre ce forum, il ne m'est pas encore autorisé de poster de lien externe, donc je n'ai pas de graphique à vous montrer hélas... Mais si vous avez une idée du type de distribution qui peut globalement coller à une distribution quasi-gaussienne, qui a une longue queue positive, et qui a des valeurs négatives (sans lesquelles j'aurais pu utiliser du Gamma par exemple), je suis preneuse !
Merci d'avance !
Zeehfir
J'étudie une variable Y dépendante qui a une distribution un peu particulière : elle est composée de 307 observations, dont les valeurs s'étendent de -0.05 à 0.25 (donc aussi bien dans les positifs que les négatifs), elle ressemble à s'y méprendre à une distribution gaussienne entre -0.05 et 0.05, mais elle a une longue queue au-delà de 0.1, que je ne peux pas me permettre de retirer par souci de pertinence (ces 30 valeurs extrêmes ont une forte signification dans mon étude, aussi rares soient-elles).
Mon problème est le suivant : mes données ne suivent pas une loi gaussienne (Shapiro-Wilk est formel), et quelle que soit la transformation que je leur fait subir (log, log+1, sqrt, carré, boxCox, boxCox spécial valeurs négatives, etc...), rien n'y fait : je n'ai pas normalité.
J'ai donc décidé de passer à une analyse non-paramétrique, mais pour mon glm, j'ai besoin de spécifier la famille de distribution dont ma variable se rapproche le plus (si je ne dis pas de bêtise).
Vu que je viens à peine de rejoindre ce forum, il ne m'est pas encore autorisé de poster de lien externe, donc je n'ai pas de graphique à vous montrer hélas... Mais si vous avez une idée du type de distribution qui peut globalement coller à une distribution quasi-gaussienne, qui a une longue queue positive, et qui a des valeurs négatives (sans lesquelles j'aurais pu utiliser du Gamma par exemple), je suis preneuse !
Merci d'avance !
Zeehfir
Zeehfir- Nombre de messages : 3
Date d'inscription : 06/03/2019
Re: Quelle distribution pour ma variable ?
Bonjour,
Utiliser un test (e.g. Shapiro) ne sera pas forcément le meilleurs moyen d'estimer une distribution pour une variable.
Tu parles également de Box-Cox, il va se baser sur la vraisemblance de ta distribution à correspondre à une distribution spécifique, pour l'avoir utilisé sur beaucoup de variables, il n'a pas forcément des résultats optimums.
Tu parles de transformation mais est-ce que tu as essayé de supprimer les bruit qui peut avoir un impact sur ta variable ?
Par exemple, il est connu que le poids est une variable normale.
Si tu voulais analyser le poids des hommes, en sélectionnant des individus qui viennent des Etats-unis, de Norvège et du Tchad, tu pourrais tomber sur une distribution qui ne ressemble pas à une distribution normale, ce phénomène pourrait potentiellement être expliqué par le fait que tu as du "bruit" sur ta variable à analyser "le poids".
L'astuce serait d'analyser les résidus d'un modèle où tu essaies de supprimer le bruit qui a pu avoir un impact sur ta variable "poids".
Tu analyserais les résidus du modèle Poids ~ Pays.
Potentiellement tu aurais des résidus distribués de manière normale et tu pourrais donc évaluer ta variable comme étant normale.
Tu peux faire la même chose et tester la normalité sur tes résidus ou sur une transformation de tes résidus.
A quoi correspond ta variable dépendante ?
Est-ce que certaines variables pourraient avoir un impact sur la distribution de ta variable ?
Peut-être que tes 30 valeurs extrêmes correspondent à un groupe spécifique (hommes/femmes/patients atteints d'une maladie/pathologie).
Utiliser un test (e.g. Shapiro) ne sera pas forcément le meilleurs moyen d'estimer une distribution pour une variable.
Tu parles également de Box-Cox, il va se baser sur la vraisemblance de ta distribution à correspondre à une distribution spécifique, pour l'avoir utilisé sur beaucoup de variables, il n'a pas forcément des résultats optimums.
Tu parles de transformation mais est-ce que tu as essayé de supprimer les bruit qui peut avoir un impact sur ta variable ?
Par exemple, il est connu que le poids est une variable normale.
Si tu voulais analyser le poids des hommes, en sélectionnant des individus qui viennent des Etats-unis, de Norvège et du Tchad, tu pourrais tomber sur une distribution qui ne ressemble pas à une distribution normale, ce phénomène pourrait potentiellement être expliqué par le fait que tu as du "bruit" sur ta variable à analyser "le poids".
L'astuce serait d'analyser les résidus d'un modèle où tu essaies de supprimer le bruit qui a pu avoir un impact sur ta variable "poids".
Tu analyserais les résidus du modèle Poids ~ Pays.
Potentiellement tu aurais des résidus distribués de manière normale et tu pourrais donc évaluer ta variable comme étant normale.
Tu peux faire la même chose et tester la normalité sur tes résidus ou sur une transformation de tes résidus.
A quoi correspond ta variable dépendante ?
Est-ce que certaines variables pourraient avoir un impact sur la distribution de ta variable ?
Peut-être que tes 30 valeurs extrêmes correspondent à un groupe spécifique (hommes/femmes/patients atteints d'une maladie/pathologie).
zezima- Nombre de messages : 939
Date d'inscription : 26/02/2013
Re: Quelle distribution pour ma variable ?
Pour compléter la réponse de zezima, il serait bien que vous nous expliquiez la question posée.
Si la question est "à quoi ressemble la distribution de mes données ?", alors vous avez déjà la réponse, avec votre histogramme.
J'imagine que vous voulez tester/comparer des effets, etc. Merci de nous expliquer ceci.
Plus généralement, le modèle linéaire général (ANOVA, etc.) est connu depuis très longtemps pour être robuste à la non-normalité. Peut-être qu'après tout, une bonne veille ANOVA conviendrait très bien..
HTH, Eric.
Si la question est "à quoi ressemble la distribution de mes données ?", alors vous avez déjà la réponse, avec votre histogramme.
J'imagine que vous voulez tester/comparer des effets, etc. Merci de nous expliquer ceci.
Plus généralement, le modèle linéaire général (ANOVA, etc.) est connu depuis très longtemps pour être robuste à la non-normalité. Peut-être qu'après tout, une bonne veille ANOVA conviendrait très bien..
HTH, Eric.
Eric Wajnberg- Nombre de messages : 1238
Date d'inscription : 14/09/2012
Re: Quelle distribution pour ma variable ?
Bonjour, et merci pour vos réponses ! Voici des précisions :
Je travaille sur l'effet d'un indice de consanguinité sur diverses variables de survie/reproduction/fitness en général chez une espèce sauvage.
Ici, il était question de savoir si le taux de consanguinité (qui est ma variable entre -0.05 et 0.25) varie avec la classe d'âge (un facteur à deux modalités : jeune ou adulte), le type d'habitat (ouvert, mixte ou fermé) et le sexe de l'individu.
Or, les valeurs extrêmes de la variable de consanguinité ont une lourde signification biologique : les individus très consanguins ne peuvent et ne doivent pas être retirés de mon jeu de données, leur présence dans mes données doit être interprétée ! et ces valeurs extrêmes correspondent a priori à des jeunes très consanguins n'ayant pas (encore) succombé, et aux adultes ayant survécu malgré les désavantages que peut impliquer un fort taux de consanguinité.
Je dois donc faire avec cette queue positive, et l'enlever serait - à mon sens - une erreur...
Merci encore de votre aide, d'ici la semaine prochaine je devrais être autorisée à illustrer mon problème avec des images et graphiques, ce devrait être plus clair pour vous !
Je travaille sur l'effet d'un indice de consanguinité sur diverses variables de survie/reproduction/fitness en général chez une espèce sauvage.
Ici, il était question de savoir si le taux de consanguinité (qui est ma variable entre -0.05 et 0.25) varie avec la classe d'âge (un facteur à deux modalités : jeune ou adulte), le type d'habitat (ouvert, mixte ou fermé) et le sexe de l'individu.
Or, les valeurs extrêmes de la variable de consanguinité ont une lourde signification biologique : les individus très consanguins ne peuvent et ne doivent pas être retirés de mon jeu de données, leur présence dans mes données doit être interprétée ! et ces valeurs extrêmes correspondent a priori à des jeunes très consanguins n'ayant pas (encore) succombé, et aux adultes ayant survécu malgré les désavantages que peut impliquer un fort taux de consanguinité.
Je dois donc faire avec cette queue positive, et l'enlever serait - à mon sens - une erreur...
Merci encore de votre aide, d'ici la semaine prochaine je devrais être autorisée à illustrer mon problème avec des images et graphiques, ce devrait être plus clair pour vous !
Zeehfir- Nombre de messages : 3
Date d'inscription : 06/03/2019
Re: Quelle distribution pour ma variable ?
Bonjour,
Il n'y a pas besoin de supprimer tes individus avec des valeurs extrêmes afin d'étudier la distribution.
Tu peux faire le modèle indice~âge+autres variables qui peuvent avoir un impact sur la distribution de l'indice (toutes les variables explicatives qui ont du sens que tu n'utiliseras pas dans ton analyse finale).
Tu obtiendras alors des résidus et pourra évaluer si oui ou non ta variable est théoriquement normale.
Ps: si tu veux étudier les résidus de variables transformées, il faut d'abord transformer ta variable puis étudier les résidus et pas l'inverse.
Voici un petit exemple R où les données n'ont pas l'air normales mais au final sont normale après avoir enlevé du bruit :
Il n'y a pas besoin de supprimer tes individus avec des valeurs extrêmes afin d'étudier la distribution.
Tu peux faire le modèle indice~âge+autres variables qui peuvent avoir un impact sur la distribution de l'indice (toutes les variables explicatives qui ont du sens que tu n'utiliseras pas dans ton analyse finale).
Tu obtiendras alors des résidus et pourra évaluer si oui ou non ta variable est théoriquement normale.
Ps: si tu veux étudier les résidus de variables transformées, il faut d'abord transformer ta variable puis étudier les résidus et pas l'inverse.
Voici un petit exemple R où les données n'ont pas l'air normales mais au final sont normale après avoir enlevé du bruit :
- Code:
##### Distribution analysis #####
install.packages(fBasics)
library(fBasics)
set.seed=1
indice_data=data.frame(indice=c(rnorm(200,5.5,1),rnorm(200,2,1)),age=c(rep("Old",200),rep("Young",200)))
par(mfrow=c(2,1))
summary(indice_data$indice)
hist(indice_data$indice[which(indice_data$indice>0)],xlab="Indice",breaks=50,col="red3",main="Indice (Raw data)")
qqnorm(indice_data$indice[which(indice_data$indice>0)],col="red4");qqline(indice_data$indice)
shapiro.test(indice_data$indice)
skewness(indice_data$indice);kurtosis(indice_data$indice)
res=lm(indice~age,data=indice_data)
summary(res$residuals)
par(mfrow=c(2,1))
hist(res$residuals,col="cyan3",main="Indice (residuals)",xlab="Residuals")
qqnorm(res$residuals,col="cyan4");qqline(res$residuals)
shapiro.test(res$residuals)
skewness(res$residuals);kurtosis(res$residuals)
par(mfrow=c(2,2))
plot(res)
Dernière édition par zezima le Mar 12 Mar 2019 - 8:57, édité 1 fois
zezima- Nombre de messages : 939
Date d'inscription : 26/02/2013
Re: Quelle distribution pour ma variable ?
Et juste une (autre) question : Comment on peut avoir un indice de consanguinité négatif ? A quoi ceci correspond ?
Cordialement, Eric.
Cordialement, Eric.
Eric Wajnberg- Nombre de messages : 1238
Date d'inscription : 14/09/2012
Re: Quelle distribution pour ma variable ?
Merci pour vos réponses, je vais y réfléchir et je reviendrai vers vous si j'ai encore des problèmes.
Et Eric Wajnberg, pour répondre à votre question concernant l'indice de consanguinité (Fgrm) je ne peux que vous conseiller de lire l'article sur lequel mon étude se base :
Huisman et. al., "Inbreeding depression across the lifespan in a wild mammal population", 2016, PNAS
Je vous en ai tout de même extrait un passage :
"Our genomic inbreeding estimator (Fgrm, for Genomic Relatedness Matrix) [...] by Yang et al. estimates how similar the gametes were that made up an individual’s genome, relative to a random draw from a reference population (here: a random-mating population with the same allele frequencies as among our sampled individuals), and can take negative values. The distribution of Fgrm is more convenient statistically than Fped (un autre indice, basé sur le pédigree), as the high, narrow peak at Fped = 0 becomes an approximately normal distribution centered at Fgrm = 0"
En espérant que cela réponde à vos questions !
Et Eric Wajnberg, pour répondre à votre question concernant l'indice de consanguinité (Fgrm) je ne peux que vous conseiller de lire l'article sur lequel mon étude se base :
Huisman et. al., "Inbreeding depression across the lifespan in a wild mammal population", 2016, PNAS
Je vous en ai tout de même extrait un passage :
"Our genomic inbreeding estimator (Fgrm, for Genomic Relatedness Matrix) [...] by Yang et al. estimates how similar the gametes were that made up an individual’s genome, relative to a random draw from a reference population (here: a random-mating population with the same allele frequencies as among our sampled individuals), and can take negative values. The distribution of Fgrm is more convenient statistically than Fped (un autre indice, basé sur le pédigree), as the high, narrow peak at Fped = 0 becomes an approximately normal distribution centered at Fgrm = 0"
En espérant que cela réponde à vos questions !
Zeehfir- Nombre de messages : 3
Date d'inscription : 06/03/2019
Re: Quelle distribution pour ma variable ?
ok merci. Ca reste contre-intuitif pour moi, mais bon.
Eric.
Eric.
Eric Wajnberg- Nombre de messages : 1238
Date d'inscription : 14/09/2012
Sujets similaires
» quelle méthode pour réduire une batterie de variable dicho ?
» De quelle nature est cette variable ?
» afficher la distribution d'une variable
» Caractériser la distribution d'une variable unique
» Distribution d'une variable différente par groupe ?
» De quelle nature est cette variable ?
» afficher la distribution d'une variable
» Caractériser la distribution d'une variable unique
» Distribution d'une variable différente par groupe ?
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum