Forum de Statistiques
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -20%
Ecran PC GIGABYTE 28″ LED M28U 4K ( IPS, 1 ms, ...
Voir le deal
399 €

Démontrer qu'un t-test rejettera plus qu'un welch test

+2
Alex83
zezima
6 participants

Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Démontrer qu'un t-test rejettera plus qu'un welch test

Message par zezima Mer 17 Mai 2017 - 8:00

Bonjour,

Je cherche à évaluer le fait d'ignorer l'hypothèse d'homogénéité dans le t-test.
Surtout n'hésitez pas à me dire si vous trouvez que je fais fausse route.

La différence entre un t-test et un welch test est la prise en compte de l'homogénéité des variances dans chaque groupe (pour le t-test).

Il y a pour moi deux hypothèses qui font que le t-test rejettera plus souvent H0 que le test de welch :

- le ddl du t-test sera toujours plus grand ou égal à celui du test de welch (et donc une statistique de test plus simple à rejeter donc H0 plus simple à rejeter)
- le dénominateur de la statistique de test du t-test est toujours plus petite ou égale à celle du test de welch (et donc la statistique de test du t-test sera plus élevée)

Je me tiens dans le cas de figure où les tailles d'échantillons des 2 groupes sont équilibrées.
Posons :
n=effectif total
n1=effectif du groupe 1
n2=effectif du groupe 2
s=sd
s1=sd(groupe 1)
s2=sd(groupe 2)

On a :

n1=n2
n=n1+n2 donc n=2*n1

Le dénominateur du t-test sera :
racine(s²/n)=racine(s²/(n1+n2))=racine(s²/(n1*2))=s/racine(n1*2)

Le dénominateur du test de welch sera :
racine((s1²/n1)+(s2²/n2))=racine((s1²/n1)+(s2²/n1))=racine((s1²+s2²)/n1)=racine(((s1²+s2²)*2)/(n1*2))=racine((s1²+s2²)*2)/racine(n1*2)

Il faudrait donc démontrer que "s" est toujours plus petit ou égal à "racine((s1²+s2²)*2)".
En faisant des simulations, on voit que c'est vrai mais je n'arrive pas à prouver que s
Quelqu'un saurait-il comment démontrer cette inégalité ?

Un grand merci d'avance
zezima
zezima

Nombre de messages : 939
Date d'inscription : 26/02/2013

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par Alex83 Mer 17 Mai 2017 - 9:12

Salut !

Je laisse les autres membres + aguerris que moi me corriger mais, si tout ce que tu dis en intro est juste, alors l'égalité peut se démontrer comme suit :

racine((s1²+s2²)*2) = racine(2) * racine(s1²+s2²) > racine(s1²+s2²) (car racine(2) >1)
et cette quantité vaut s (on s'en aperçoit en réécrivant sa définition).

Me trompe-je ? ^^

Alex

Alex83

Nombre de messages : 15
Date d'inscription : 09/01/2017

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par niaboc Mer 17 Mai 2017 - 9:36

Bonjour,

en regardant tes formules, il y a un truc qui me dérange :
- pour le T-test tu prends le test de moyenne d'un échantillon vs une valeur de référence
- pour le Welsh-test tu prends le test de différence de moyennes de 2 échantillons indépendants

Tu devrais partir sur s*(racine(1/n1+1/n2)) pour le test T de Student, non?

En partant là-dessus, si les échantillons sont de tailles identiques, n'y-a-til pas seulement le degré de liberté de la loi de Student qui change? (n-2 pour le test-T et n-1 pour le test de Welch)? 

Les variances étant identiques pour les deux tests lorsque les échantillons sont de même taille, je pense :
pour simplifier je dis n1=n2=n.

pour le test-T, la variance pondérée des deux échantillons multipliées par (1/n1+1/n2):

[ ((n-1)*S1²+(n-1)*S2²) /(2*n-2) ]*(2/n)
=( (n-1)*S1²+(n-1)*S2² ) / ( (n-1)*n )
= (S1²+S2²)/n

Pour le Welsh Test :
S1²/n+S2²/n
= (S1²+S2²)/n

Niaboc
niaboc
niaboc

Nombre de messages : 1001
Age : 37
Localisation : Paris
Date d'inscription : 05/05/2008

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par zezima Mer 17 Mai 2017 - 12:31

Bonjour et tout d'abord merci beaucoup pour vos réponses,

Alex83 :
La décomposition du dénominateur de la statistique de test du test de welch est en effet juste mais il n'y a pas de relation entre s, s1 et s2, malheureusement nous ne pouvons pas dire que s=racine(s1²+s2²) car la variabilité des deux échantillons est différente de celle globale.

Petit exemple :
Code:

a=rnorm(30,50,round(runif(1,min=1,max=10)));b=rnorm(30,50+round(runif(1,min=1,max=10)),round(runif(1,min=1,max=10)));c=c(a,b);print("ttest");sd(c);print("welch");sqrt((var(a)+var(b))*2)


Niaboc :
Oui en effet tu as raison, après vérification, la statistique de test du t-test de différence entre 2 moyennes d'échantillons indépendants pour une variabilité homogène n'était pas la bonne.

Tu m'as convaincu avec la formule, c'est donc le ddl qui joue au final.
Merci pour ta démonstration.

Ce petit code confirme que le Welch n'aura jamais une p-valeur plus petite que le Student (variances homogènes) :
Code:

for (i in 1:10000){
a=rnorm(30,50,round(runif(1,min=1,max=10)));b=rnorm(30,50+round(runif(1,min=1,max=10)),round(runif(1,min=1,max=10)));c=c(a,b)
if (t.test(a,b,var.equal=FALSE)$p.value<t.test(a,b,var.equal=TRUE)$p.value) {
print("oulala");print(i);break}
}


Dernière édition par zezima le Mer 17 Mai 2017 - 15:37, édité 1 fois
zezima
zezima

Nombre de messages : 939
Date d'inscription : 26/02/2013

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par Nik Mer 17 Mai 2017 - 13:01

Ton sujet m'a fait découvrir ce blog.
Très intéressant je trouve.

http://daniellakens.blogspot.fr/2015/01/always-use-welchs-t-test-instead-of.html

Nik

Nombre de messages : 1606
Date d'inscription : 23/05/2008

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par Alex83 Mer 17 Mai 2017 - 13:08

Arf, j'étais presque sûr de moi hein ! :p

Exemple si n=6, n1=3, n2=3 (enlevons le /n de la formule de la variance, pour simplifier, mais comme n1=n2, pas d'impact)
s1 = racine( (x1-xbar)² + (x2-xbar)² + (x3-xbar)²) ) => s1² = (x1-xbar)² + (x2-xbar)² + (x3-xbar)²
s2 = racine( (x4-xbar)² + (x5-xbar)² + (x6-xbar)²) ) => s2² = (x4-xbar)² + (x5-xbar)² + (x6-xbar)²

racine(s1² +s2²) = racine( (x1-xbar)² + (x2-xbar)² + (x3-xbar)² + (x4-xbar)² + (x5-xbar)² + (x6-xbar)² )
qui est bien s par définition, non ? (l'écart type de toute ta population)

En gros, comme n est couvert par n1 et n2 (dans les mêmes proportions), tu peux toujours réarranger les termes sous ta racine carrée...(?)
Si j'ai faux, soit mes cours de maths sont trop loin, soit je suis très fatigué... ^^

Alex




Alex83

Nombre de messages : 15
Date d'inscription : 09/01/2017

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par zezima Mer 17 Mai 2017 - 15:32

Nik
Très intéressant comme article Nik.
Cependant, je ne comprends pas qu'ils appellent à remplacer le t-test par un welch test, tout ça en se basant sur une simulation avec un delta fixe, des tailles d'échantillons fixes et des variances fixes.

Personnellement j'ai également effectué une simulation mais en me basant sur la puissance et le risque de rejet à tort alpha.
Je ne me suis intéressé à des échantillons de taille 9 mais j'ai trouvé que le taux de bonne prédiction des mes p-valeurs était beaucoup plus grand pour un t-test plutôt qu'un welch. (10% de gain en puissance et 1% d'augmentation du risque alpha pour le t-test)

Alex83
Hélas la formule que tu as énoncé n'est pas bonne, ce serait plutôt :
s1 = racine( ( (x1-xbar[1,2,3])² + (x2-xbar[1,2,3])² + (x3-xbar[1,2,3])²) )/3)
s2 = racine( ( (x4-xbar[4,5,6])² + (x5-xbar[4,5,6])² + (x6-xbar[4,5,6])²) )/3)

Car l'écart-type que tu calcules dans chaque groupe ne dépend que des données de chaque groupe Smile
zezima
zezima

Nombre de messages : 939
Date d'inscription : 26/02/2013

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par Eric Wajnberg Mer 17 Mai 2017 - 17:52

Hello,

Je ne suis pas très sûr de bien comprendre cette discussion.

Ce que vous appelez un "test de Welch" est en fait un test t avec une correction de Welch, effectivement sur le ddl. Les deux sont des tests t, et en fait, il ne s'agit que du même test t avec correction ou pas.

Par ailleurs, le test t en cas d’homoscédasticité est, si je me souviens bien, juste un cas particulier de l'approximation proposée par Welch (ou Satterthwaite), qui le généralise. Si les variances des deux populations mères sont exactement les mêmes, l'approximation de Welch retombe sur un ddl de n1+n2-2 (il y a bien longtemps que je n'ai pas vérifié ce truc).

Du coup, la démarche est de prendre toujours cette approximation, qui retombera donc sur un simple test t en cas d'homoscédasticité parfaite.

Ou alors, j'ai loupé quelque chose dans cette discussion.

HTH, Eric.
Eric Wajnberg
Eric Wajnberg

Nombre de messages : 1237
Date d'inscription : 14/09/2012

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par niaboc Mer 17 Mai 2017 - 21:41

Eric Wajnberg a écrit:

Ce que vous appelez un "test de Welch" est en fait un test t avec une correction de Welch, effectivement sur le ddl. Les deux sont des tests t, et en fait, il ne s'agit que du même test t avec correction ou pas.


Ce n'est pas uniquement la correction du ddl, il s'agît (à mon sens) d'une vrai modification du test t puisqu'on utilise plus la variance combinée des 2 populations et qu'on recalcule en plus un ddl spécifiquement pour ce cas.


Eric Wajnberg a écrit:
Par ailleurs, le test t en cas d’homoscédasticité est, si je me souviens bien, juste un cas particulier de l'approximation proposée par Welch (ou Satterthwaite), qui le généralise. Si les variances des deux populations mères sont exactement les mêmes, l'approximation de Welch retombe sur un ddl de n1+n2-2 (il y a bien longtemps que je n'ai pas vérifié ce truc).

Du coup, la démarche est de prendre toujours cette approximation, qui retombera donc sur un simple test t en cas d'homoscédasticité parfaite.

Il me semble que la taille des 2 échantillons doit être identique également pour que la correction du ddl de Welch retombe sur n1+n2-2, sinon la correction fait augmenter le ddl, même en cas d'homoscédasticité?

Il est peut-être donc préférable de partir d'abord sur un test d'égalité des variances (F de Snédécor) avant de choisir entre test T de Student ou test de Welch (Du moins, c'est comme ça que je procède...)

Niaboc
niaboc
niaboc

Nombre de messages : 1001
Age : 37
Localisation : Paris
Date d'inscription : 05/05/2008

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par zezima Jeu 18 Mai 2017 - 7:36

niaboc a écrit:Il est peut-être donc préférable de partir d'abord sur un test d'égalité des variances (F de Snédécor) avant de choisir entre test T de Student ou test de Welch (Du moins, c'est comme ça que je procède...)

Oui mais je pense qu'on arrive au même problème que le test de shapiro.
Pour un test de Levene (qui est assez subjectif au final), on aura du mal à rejeter l'égalité des variances pour de petits échantillons et inversement, on rejettera facilement pour de grands échantillons, je pense qu'il est potentiellement plus robuste de faire une analyse visuelle.

Et après avoir fait une petite simulation, il semblerait qu'un T de Student (variances homogènes) ait plus de résultats bien prédits sur des tous petits échantillons (je peux mettre le code si besoin).
zezima
zezima

Nombre de messages : 939
Date d'inscription : 26/02/2013

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par droopy Lun 22 Mai 2017 - 11:50

Bonjour,

niaboc a écrit:Ce n'est pas uniquement la correction du ddl, il s'agît (à mon sens) d'une vrai modification du test t puisqu'on utilise plus la variance combinée des 2 populations et qu'on recalcule en plus un ddl spécifiquement pour ce cas.
Je ne suis pas d'accord avec cette affirmation parce qu'à part dans de très rares cas ou des simulations on ne connait pas les variances des populations, on en a juste des estimations. Dans le cas du test T tu vas effectivement considérer que les variances des populations sont égales (pop et non échantillon) et tu fais donc une estimation de la variance commune aux deux populations. Avec Welsh tu relâches cette hypothèse. Le choix devrait à mon avis se faire sur cette base : est-ce que tu peux considérer que les variances sont homogènes ? Si oui test T si non ou pas d'avis alors Welsh.

Pour répondre à la question de départ on pourrait envisager de faire des simulations avec des variances communes ou non (et des ecarts de plus en forts), avec des écarts de moyennes de plus en plus forts et avec des tailles d'échantillon de plus en plus grandes.

cdlt
droopy
droopy

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

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par zezima Lun 22 Mai 2017 - 14:37

Bonjour droopy,

Oui j'ai effectué une simulation mais cette fois-ci comparant une ANOVA classique (hypothèse d'homogénéité des variances) et une ANOVA de Welch (hypothèse d'hétérogénéité des variances).

Et je pense qu'il y a un problème dans mon code ou alors il faut que je publie ma simulation, j'ai conclu que j'avais un ratio puissance/risque alpha plus élevé pour des ANOVAs classiques par rapport aux ANOVAs de Welch lorsqu'on est dans un cas de figure d'hétérogénéité pour des groupes de taille n=9.
Je pense qu'il manque quelquechose :/
zezima
zezima

Nombre de messages : 939
Date d'inscription : 26/02/2013

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par droopy Lun 22 Mai 2017 - 19:29

Dans le cas d'hétérogénéité de variance sur une ANOVA je partirais sur des gls plutôt que sur une ANOVA de Welch (je n'en avais jamais entendu parlée).

cdlt
droopy
droopy

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

Revenir en haut Aller en bas

Démontrer qu'un t-test rejettera plus qu'un welch test Empty Re: Démontrer qu'un t-test rejettera plus qu'un welch test

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

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