Les posteurs les plus actifs de la semaine
Aucun utilisateur |
Sujets les plus vus
delta de power.t.test
2 participants
Page 1 sur 1
delta de power.t.test
Bonjour,
Je réalise actuellement un travail sur la "puissance des tests", plus précisément sur le test de Student. La démarche que je mène vise à répondre à la question :
"Combien d'observations dois-je faire pour qu'un test de student sur deux échantillons (bi-latéral ou non, cela peut varier) soit significatif à partir de x% de différence?". Pour ceux que ça intéresse, je précise qu'il faut avant tout disposer d'une référence de l'écart-type de la moyenne de la variable que l'on étudie pour appréhender cette question.
La question peut également être prise dans l'autre sens à savoir : "avec le nombre d'observations dont je dispose, quelle est la plus petite différence significative que je peux détecter?". Cela permet, in fine, de faire des conclusions plus précises en changeant le "...différence moyenne non significative..." en "...différence moyenne significativement inférieure à une valeur x...". C'est sous cette forme que je travaille actuellement.
J'utilise donc la fonction power.t.test (sous R) et suis assez surpris des résultats que j'obtiens lorsque je cherche à évaluer la sensibilité de mon dispositif expérimental. Un exemple tiré de mes données (relative à l'efficacité de deux traitements) :
Je doute vraiment que mon test reste significatif si la différence des moyennes passe à 3 % (au vu notamment de l'intervalle de confiance de la différence). Les questions que je me pose sont :
- J'ai des échantillons déséquilibrés, peut-être est-ce un problème?
- Est-ce l'absence d'homogénéité des variances qui donne une sensibilité bien plus basse au test de Welch? A ce moment "power.t.test" n'est pas adapté? Mais je doute que le test de Welch soit à ce point éloigné de celui de Student...
J'avais codé moi-même une fonction similaire à power.t.test (avant de connaître son existence). Les résultats que j'avais obtenu en la testant m'ont fait dire que, lorsqu'on fixe beta à 0.05 (ou "power" à 0.95), la sensibilité est environ égale à la moitié de l'intervalle de confiance donné par t.test (avec ou sans homogénéité des variances), ce qui est très cohérent, en tout cas bien plus que ce que j'obtiens là. Je passais par la même estimation de Laplace-Gauss pour l'écart-type de la différence. Au passage, cela me laisser entendre dire que la fonction t.test fixe implicitement le risque de seconde espèce beta à 0.05. Je suis suffisamment humble pour penser qu'il est peu probable que j'ai raison face à la communauté R, mais j'aimerai bien comprendre. De ce que j'ai vu, power.t.test se repose uniquement sur les quantiles de student (fonctions "qt(), pt()" etc...). De mon coté, j'avais pris le parti de passer sur les quantiles de la loi normale au delà de 30 observations (ce qui me donne un "ressaut" de sensibilité autour de 30 observations lorsque je fais un plot delta~n en fixant sd, alpha et beta). Peut être est-ce là la raison de cette différence? Mais logiquement, c'est la loi normale qui devrait donner la plus petite sensibilité (la table de student n'étant qu'une approximation de celle de la loi normale, à moins que je ne m'égare).
Bref, comprenez-vous pourquoi le delta que me retourne power.t.test est si faible? Je m'attendez plus à une valeur avoisinnant 7.31 pour les raisons citées plus haut :
D'avance merci pour les contributions.
Bien cordialement.
Je réalise actuellement un travail sur la "puissance des tests", plus précisément sur le test de Student. La démarche que je mène vise à répondre à la question :
"Combien d'observations dois-je faire pour qu'un test de student sur deux échantillons (bi-latéral ou non, cela peut varier) soit significatif à partir de x% de différence?". Pour ceux que ça intéresse, je précise qu'il faut avant tout disposer d'une référence de l'écart-type de la moyenne de la variable que l'on étudie pour appréhender cette question.
La question peut également être prise dans l'autre sens à savoir : "avec le nombre d'observations dont je dispose, quelle est la plus petite différence significative que je peux détecter?". Cela permet, in fine, de faire des conclusions plus précises en changeant le "...différence moyenne non significative..." en "...différence moyenne significativement inférieure à une valeur x...". C'est sous cette forme que je travaille actuellement.
J'utilise donc la fonction power.t.test (sous R) et suis assez surpris des résultats que j'obtiens lorsque je cherche à évaluer la sensibilité de mon dispositif expérimental. Un exemple tiré de mes données (relative à l'efficacité de deux traitements) :
- Code:
# soit 2 traitements (nommés MAQS et Apilife var)
> (n1 <- (sum(!is.na(tab$eff[type=="MAQS"]))))
[1] 53
> (n2 <- (sum(!is.na(tab$eff[type=="Apilife var"]))))
[1] 58
> (s1 <- sd(tab$eff[type=="MAQS"], na.rm=T))
[1] 24.31975
> (s2 <- sd(tab$eff[type=="Apilife var"], na.rm=T))
[1] 11.55316
> power.t.test(n=53, sd = sqrt((s1^2/n1)+(s2^2/n2)), sig = 0.05, power = 0.95, type = "two.sample")$delta # Je fixe le "n" au plus faible
[1] 2.593273
# Et le test de Student (Welch car variances inégales) qui va avec :
> t.test(tab$eff[type=="MAQS"], tab$eff[type=="Apilife var"])
Welch Two Sample t-test
data: tab$eff[type == "MAQS"] and tab$eff[type == "Apilife var"]
t = -2.5998, df = 72.833, p-value = 0.01129
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-16.850867 -2.226134
sample estimates:
mean of x mean of y
77.2534 86.7919
Je doute vraiment que mon test reste significatif si la différence des moyennes passe à 3 % (au vu notamment de l'intervalle de confiance de la différence). Les questions que je me pose sont :
- J'ai des échantillons déséquilibrés, peut-être est-ce un problème?
- Est-ce l'absence d'homogénéité des variances qui donne une sensibilité bien plus basse au test de Welch? A ce moment "power.t.test" n'est pas adapté? Mais je doute que le test de Welch soit à ce point éloigné de celui de Student...
J'avais codé moi-même une fonction similaire à power.t.test (avant de connaître son existence). Les résultats que j'avais obtenu en la testant m'ont fait dire que, lorsqu'on fixe beta à 0.05 (ou "power" à 0.95), la sensibilité est environ égale à la moitié de l'intervalle de confiance donné par t.test (avec ou sans homogénéité des variances), ce qui est très cohérent, en tout cas bien plus que ce que j'obtiens là. Je passais par la même estimation de Laplace-Gauss pour l'écart-type de la différence. Au passage, cela me laisser entendre dire que la fonction t.test fixe implicitement le risque de seconde espèce beta à 0.05. Je suis suffisamment humble pour penser qu'il est peu probable que j'ai raison face à la communauté R, mais j'aimerai bien comprendre. De ce que j'ai vu, power.t.test se repose uniquement sur les quantiles de student (fonctions "qt(), pt()" etc...). De mon coté, j'avais pris le parti de passer sur les quantiles de la loi normale au delà de 30 observations (ce qui me donne un "ressaut" de sensibilité autour de 30 observations lorsque je fais un plot delta~n en fixant sd, alpha et beta). Peut être est-ce là la raison de cette différence? Mais logiquement, c'est la loi normale qui devrait donner la plus petite sensibilité (la table de student n'étant qu'une approximation de celle de la loi normale, à moins que je ne m'égare).
Bref, comprenez-vous pourquoi le delta que me retourne power.t.test est si faible? Je m'attendez plus à une valeur avoisinnant 7.31 pour les raisons citées plus haut :
- Code:
> (16.850867 - 2.226134 )/2
[1] 7.312367
D'avance merci pour les contributions.
Bien cordialement.
Alexandre Dangléant- Nombre de messages : 19
Date d'inscription : 15/10/2013
Re: delta de power.t.test
Ce lien peut aider, en particulier les exemples de calcul et les references en fin d'article
http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2876926/
http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2876926/
c@ssoulet- Nombre de messages : 925
Date d'inscription : 05/05/2008
Re: delta de power.t.test
Merci! Je m'y colle desuite!
Alexandre Dangléant- Nombre de messages : 19
Date d'inscription : 15/10/2013
Re: delta de power.t.test
De ce que j'ai vu, leur calcul me parait incorrect par rapport à un autre travail sur lequel je me suis basé et où la formule est clairement explicité. Ils donnent :
n = 2(Za+Z1-b)² x sigma² x delta²
avec
n = le nombre d'observations
Z les valeurs des tables d'alpha et beta
sigma = l'écart-type de la différence entre les moyennes
delta = la différence que l'on cherche à mettre en évidence
Hors cette formule est plutôt : n = 2(Za+Z1-b)² x (sigma/delta)²
Je n'ai malheureusement pas de lien à fournir, mais j'ai le pdf sous la main donc me contacter en mp pour un envoi direct de la fiche décrivant le calcul.
Cela m'a tout de même poussé à revenir sur mon script et j'ai du merder qq part, manifestement. En réalité, et c'est l'article fourni qui m'a mis la puce à l'oreille, le t.test semble plus calqué sur un risque beta situé entre de 0.10 et 0.15. En refaisant mes calculs, ma sensibilité et remontée à 7.39 % (par rapport au 3% de mon premier post), ce qui place la borne inférieur de l'intervalle de confiance de la différence à proximité de 0. En diminuant beta, ma sensibilité diminue et la plus petite différence que je peux détecter significativement augmente. Bref, tout va bien dans le meilleur des mondes!
Bien cordialement!
n = 2(Za+Z1-b)² x sigma² x delta²
avec
n = le nombre d'observations
Z les valeurs des tables d'alpha et beta
sigma = l'écart-type de la différence entre les moyennes
delta = la différence que l'on cherche à mettre en évidence
Hors cette formule est plutôt : n = 2(Za+Z1-b)² x (sigma/delta)²
Je n'ai malheureusement pas de lien à fournir, mais j'ai le pdf sous la main donc me contacter en mp pour un envoi direct de la fiche décrivant le calcul.
Cela m'a tout de même poussé à revenir sur mon script et j'ai du merder qq part, manifestement. En réalité, et c'est l'article fourni qui m'a mis la puce à l'oreille, le t.test semble plus calqué sur un risque beta situé entre de 0.10 et 0.15. En refaisant mes calculs, ma sensibilité et remontée à 7.39 % (par rapport au 3% de mon premier post), ce qui place la borne inférieur de l'intervalle de confiance de la différence à proximité de 0. En diminuant beta, ma sensibilité diminue et la plus petite différence que je peux détecter significativement augmente. Bref, tout va bien dans le meilleur des mondes!
Bien cordialement!
Alexandre Dangléant- Nombre de messages : 19
Date d'inscription : 15/10/2013
Sujets similaires
» Test statistique: test coeff correlation deux sous popu
» test pente significative test de fisher Fcalculé négatif?
» Test sur une moyenne --> probabilité qu'un test soit erroné
» Test sur variable globale ou test sur variables indicatrices
» Interprétation test du Chi2 et test Anova
» test pente significative test de fisher Fcalculé négatif?
» Test sur une moyenne --> probabilité qu'un test soit erroné
» Test sur variable globale ou test sur variables indicatrices
» Interprétation test du Chi2 et test Anova
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|