Le test de Welch

add

\bullet Historique:

\begin{tabular}{|l|c|c|} \hline Bloc & 14/05/2013-V1 & 08/11/2019-V2 \\ \hline Historique &  & Cr\'eation \\ \hline Sommaire &  & Cr\'eation \\ \hline Pr\'esentation & Cr\'eation & MAJ \\ \hline Le test & Cr\'eation & Devient: le test et sa variante, calcul des p-valeurs \\ \hline Tendance lorsque... & Cr\'eation & MAJ \\ \hline Annexe th\'eo... & Cr\'eation & MAJ \\ \hline Exemple & Cr\'eation & MAJ, ANOVA de Welch \\ \hline Appli... info... & Cr\'eation & Devient Appli... sous R \\ \hline Appli... sous SAS &  & Cr\'eation \\ \hline Bibliographie & Cr\'eation & MAJ \\ \hline \end{tabular}

\bullet Sommaire:

  • Présentation
  • Le test et sa variante
    • Cas à deux échantillons: le test de Welch
      • La table de la loi de Student
      • Conditions pour le rejet de H_0
      • Calcul de la p-valeur exacte
    • Cas à plusieurs échantillons: l’ANOVA de Welch
      • La table de la loi de Fisher-Snedecor
      • Conditions pour le rejet de H_0
      • Calcul de la p-valeur exacte
  • Tendance lorsque n \rightarrow + \infty
  • Annexe théorique
  • Exemple
    • Cas à deux échantillons: le test de Welch
    • Cas à plusieurs échantillons: l’ANOVA de Welch
  • Application sous R
    • Cas à deux échantillons: le test de Welch
    • Cas à plusieurs échantillons: l’ANOVA de Welch
  • Application sous SAS
    • Cas à deux échantillons: le test de Welch
    • Cas à plusieurs échantillons: l’ANOVA de Welch
  • Bibliographie

\bullet Présentation:

Publié en 1947 par Bernard Lewis Welch comme solution approchée au problème de Behrens-Fisher, le test de Welch (nommé aussi Satterthwaite ou Welch-Satterthwaite, du fait de l’équation de Welch-Satterhwaite qui est à la base du calcul des degrés de liberté) est une approche paramétrique permettant de tester la liaison entre une variable continue X et une variable binaire Y. Soit X|_{Y = A} et X|_{Y = B} les sous-échantillons de X restreinte, respectivement, aux groupes « A » et « B » de Y. L’objectif du test de Welch est alors de déterminer si les moyennes des deux sous-échantillons sont égales.

L’hypothèse d’utilisation est que X|_{Y = A} et X|_{Y = B} suivent une loi normale et que leur variance soit différente. En ce sens, il demeure une alternative plus robuste au test de Student quand la condition sur les variances n’est pas respectée.

Cet article présente également le cas de l’ANalyse De VAriance (ANOVA) de Welch , permettant de généraliser l’approche au cas où Y est polychotomique. A l’instar du cas dichotimique, l’ANOVA de Welch est utilisée comme une alternative à l’ANOVA de Fisher lorsque les variances ne sont pas égales.

\bullet Le test et sa variante:

Hypothèses préliminaires: X continue et Y binaire ou polychotomique. Normalité et inégalité des variances.

Cas à deux échantillons: le test de Welch

Soit (\mu_A, \sigma_A ^2) et (\mu_B, \sigma_B ^2) les moyennes et variances respectives des sous-échantillons de X restreinte aux groupes « A » et « B » de Y, de taille n_A et n_B. La statistique du test de Welch est alors:

T = \frac{\mu_A - \mu_B}{\sqrt{\frac{\sigma_A ^2}{n_A} + \frac{\sigma_B ^2}{n_B}}}

Cette statistique suit une loi de Student à: \frac{(\frac{\sigma_A ^2}{n_A} + \frac{\sigma_B ^2}{n_B}) ^2}{\frac{\frac{\sigma_A ^2}{n_A}}{n_A - 1} + \frac{\frac{\sigma_B ^2}{n_B}}{n_B - 1}} degrés de liberté.

L’hypothèse H_0 est:

Les moyennes sont égales / \mu_A = \mu_B

Avec T_{1 - \alpha} la valeur seuil de la distribution de la statistique de test T pour une confiance \alpha, les hypothèses alternatives sont alors,

H_1: \mu_A > \mu_B, soit T > T_{\alpha}, pour un test unilatéral à droite ;

H_1: \mu_A < \mu_B, soit T > T_{1 - \alpha}, pour un test unitaléral à gauche ;

H_1: \mu_A \neq \mu_B, soit |T| > T_{1 - \frac{\alpha}{2}}, pour un test bilatéral.

La table de la loi de Student:

add

Conditions pour le rejet de H_0:  

Le test de Welch peut se résumer de la façon suivante:

add.png

Ainsi, pour accepter H_0 il faut que,

T = \frac{\mu_A - \mu_B}{\sqrt{\frac{\sigma_A ^2}{n_A} + \frac{\sigma_B ^2}{n_B}}} \longrightarrow 0

C’est-à-dire soit \mu_A \longrightarrow \mu_B soit \sigma_A ^2, \sigma_B ^2 \longrightarrow \infty. Inversement, nous rejetterons H_0 de plus en plus fortement que les moyennes seront éloignées et les variances faibles.

Cette seconde condition est d’autant plus importante puisque si l’une des deux variances \sigma_A ^2, \sigma_B ^2 est particulièrement forte, cela implique qu’elle a plus de chance de couvrir la distribution de l’autre sous-échantillon.

Calcul de la p-valeur exacte:

La loi de distribution à laquelle se référer pour la statistique T est celle de Student. En prenant d le nombre de degrés de liberté, B(z,\frac{1}{2},\frac{d}{2}) la fonction Bêta incomplète et B(\frac{1}{2},\frac{d}{2}) la fonction Bêta. Le calcul de la p-valeur associée à la statistique de test de Welch est alors,

– Dans le cas bilatéral:

p = P(T_{obs} > T_{n,\frac{\alpha}{2}}) = 1 - \frac{B(z,\frac{1}{2},\frac{d}{2})}{B(\frac{1}{2},\frac{d}{2})}

– Dans le cas unilatéral à droite:

p = P(T_{obs} > T_{n,\alpha}) = \frac{1}{2} + \frac{1}{2} \frac{B(z,\frac{1}{2},\frac{d}{2})}{B(\frac{1}{2},\frac{d}{2})}

– Dans le cas unilatéral à gauche:

p = P(T_{obs} > T_{n,1-\alpha}) = \frac{1}{2} - \frac{1}{2} \frac{B(z,\frac{1}{2},\frac{d}{2})}{B(\frac{1}{2},\frac{d}{2})}

Avec,

z = \frac{\frac{T_{obs} ^2}{d}}{1 + \frac{T_{obs} ^2}{d}} ;

B(\frac{1}{2},\frac{d}{2}) = \frac{\Gamma(\frac{1}{2}) \Gamma(\frac{d}{2})}{\Gamma(\frac{1}{2} + \frac{d}{2})} = \sqrt{\pi}\frac{ \Gamma(\frac{d}{2})}{\Gamma(\frac{d + 1}{2})} ;

B(z;\frac{1}{2},\frac{d}{2}) = \sqrt{z} (2 + \sum_{s = 1} ^S \frac{\prod_{j = 1} ^s (j - \frac{d}{2})}{s ! (\frac{1}{2} + s)} z ^s), qui converge assez rapidement pour S petit.

Cas à plusieurs échantillons: l’ANOVA de Welch

Publiée en 1951 par Bernard Lewis Welch également, l’ANOVA de Welch présente une alternative d’intérêt à celle de Fisher lorsque les variances des sous-échantillons X|_{Y = k}, \forall k \in[1,K] ne sont pas égales. On posera taille n_k la taille de l’effectif associées à X|_{Y = k}, \mu_k sa moyenne et \sigma_k ^2 sa variance.

La formule de la statistique de test associée à l’ANOVA de Welch est,

F = \frac{\frac{1}{K - 1} \sum_{k = 1} ^K w_k (\mu_k - \bigtriangleup) ^2}{1 + \frac{2 (K - 2)}{K ^2 - 1} \sum_{k = 1} ^K (\frac{1}{n_k - 1}) (1 - \frac{w_k}{w}) ^2}

Avec,

w_k = \frac{n_k}{\sigma_k ^2} ;

w = \sum_{k = 1} ^K w_k ;

\bigtriangleup = \frac{\sum_{k = 1} ^K w_k \mu_k}{w}.

Elle suit une loi de Fisher de paramètres (K - 1, \frac{K ^2 - 1}{3 \sum_{k = 1} ^K (\frac{1}{n_k - 1}) (1 - \frac{w_k}{w}) ^2}). L’hypothèse H_0 est:

Les moyennes sont égales / \mu_1 = \cdots = \mu_K

On pose F_{N,1-\alpha} la valeur seuil de la distribution de la statistique de test F pour une confiance \alpha et de paramètres N définis comme ci-dessus. L’hypothèse alternative est alors,

H_1: \exists au moins un k',k'' tel que m_{k'} \neq m_{k ''}, soit F \geq F_{N,1-\alpha}

, qui est unilatéral par construction du test.

La table de la loi de Fisher-Snedecor:

add

Calcul de la p-valeur exacte:

La loi à laquelle reporter la statistique de test F de l’ANOVA de Welch est celle de Fisher-Snedecor de paramètres N = (d_1, d_2) = (K - 1, \frac{K ^2 - 1}{3 \sum_{k = 1} ^K (\frac{1}{n_k - 1}) (1 - \frac{w_k}{w}) ^2}). Par conséquent, avec B(N) la fonction bêta et B(.,N) la fonction bêta incomplète,

p = P(F_{obs} > F_{N,1-\alpha}) = 1 - \frac{B(z,N)}{BN)}

, qui par construction du test est unilatéral à droite.

Avec,

z = \frac{(d_1-1) F_{obs}}{(d_1-1) F_{obs} + (d_2-1)} ;

B(N) = \frac{\Gamma(\frac{d_1-1}{2}) \Gamma(\frac{d_2-1}{2})}{\Gamma(\frac{d_1 + d_2}{2} - 1)} ;

B(z;N) = z ^{\frac{d_1-1}{2}} (\frac{2}{d_1-1} + \sum_{s = 1} ^S \frac{\prod_{j = 1} ^s (j - (d_2-2))}{s ! (d_1-1 + s)} z ^s). Cette formule converge assez rapidement pour S petit.

Conditions pour le rejet de H_0:  

Plus la statistique de test F est grande et plus on a de chance de rejeter H_0 puisque l’on est dans un cadre unilatéral. Avant d’étudier le comportement du numérateur, on s’intéresse au dénominateur qui n’a finalement que peu d’influence sur la variation de F,

1 + \frac{2 (K - 2)}{K ^2 - 1} \sum_{k = 1} ^K (\frac{1}{n_k - 1}) (1 - \frac{w_k}{w}) ^2 \in [1,2]

, puisque \frac{1}{n_k - 1} \in [0,1], 0 si la taille d’échantillon est trop grande et 1 si elle est de 2 observations. Et (1 - \frac{w_k}{w}) \in [0,1] également, 0 si on est en présence d’une seule classe puisque w_k = w et pour le reste w = \sum_{k = 1} ^K w_k >>> w_k.

Concernant le numérateur :

\frac{1}{K - 1} \sum_{k = 1} ^K w_k (\mu_k - \bigtriangleup) ^2

Il converge vers 0 (acceptation de H_0) si \forall k, \mu_k = \bigtriangleup = \frac{\sum_{k = 1} ^K w_k \mu_k}{\sum_{k = 1} ^K w_k},

\Rightarrow \forall k, k', \mu_k = \mu_{k'} = C

\Rightarrow \bigtriangleup = C \frac{\sum_{k = 1} ^K w_k}{\sum_{k = 1} ^K w_k} = C

, ce qui revient à dire que si les moyennes sont égales alors F converge vers 0.

Enfin, il converge vers + \infty (rejet de H_0) si \exists k, \mu_k >>> \bigtriangleup, soit qu’au moins l’une des moyennes de nos K groupes est nettement plus grande que la somme des moyennes pondérées \bigtriangleup.

\bullet Tendance lorsque n \longrightarrow \infty:

On s’intéresse désormais à la résistance du test T de Welch au fur et à mesure que la taille d’échantillon croît. Nous fixons le ratio: différence des ratio moyennes sur variances à 0.001, soit un cas fictif correspondant à un écart particulièrement faible entre les deux moyennes. Le résultat attendu est forcément que quelque soit la taille de l’échantillon, on ne rejettera pas l’hypothèse H_0 d’égalité des moyennes. Le graphique ci-dessous montre l’évolution de la p-valeur p associée à la statistique de test T_{test} fixée lorsque n croît de 10 à 100 000 observations:

De manière hâtive, on reste en adéquation avec l’hypothèse de construction de la statistique de test T de Welch jusqu’à n = 16 417 (p > 20 \%). Jusqu’à n = 38 409, on se forcera à rejeter H_0 avec un risque assez fort compris entre  20 \% et 5 \%. Enfin, à n = 66 344 la p-valeur passe en dessous des 1 \%.

Cette simulation montre que le test T de Welch est atteint par la malédiction des grands échantillons. Cependant, et même s’il faut relativiser ce constat car ici nous prenons une statistique de test T particulièrement faible, on peut également voir qu’il offre une certaine marge et permet de travailler sur des échantillons assez importants.

\bullet Annexe théorique:

La statistique du test de Welch a été construite sur la recherche d’une solution approchée au problème de Behrens-Fisher :

T = \frac{\mu_A - \mu_B}{\sqrt{\frac{\sigma_A ^2}{n_A} + \frac{\sigma_B ^2}{n_B}}}

Dans le cas où \sigma_A ^2 \neq \sigma_B ^2, trouver une approximation du dénominateur n’est pas trivial. On présentera donc une esquisse de la démonstration de la résolution de ce problème.

L’idée de Welch est d’assimiler les distributions de (\mu_A - \mu_B), \frac{\sigma_A ^2}{n_A}, \frac{\sigma_B ^2}{n_B} à celles du \chi ^2 respectivement à 1, n_A - 1, n_B - 1 degré(s) de liberté que l’on notera, respectivement : \chi ', \chi_A ^2, \chi_B ^2.

Ce qui est d’autant plus vrai puisque, par hypothèse, X suit une loi normale donc sa variance suit une loi du \chi ^2. Concernant sa moyenne, on sait qu’elle suit une loi normale centrée-réduite et que la somme de lois normales donne une loi du \chi ^2 à K - 1 degrés de liberté. Ici on fait la somme de 2 variables aléatoires, d’où des degrés de liberté égaux à K - 1 = 2 - 1 = 1.

Ce qui revient au développement de l’objet:

\frac{\chi ^2}{\sqrt{a \chi_A ^2 + b \chi_B ^2}}, avec (a,b) constantes

On va alors approcher le dénominateur par la distribution de type III de Pearson: 

p(w)dw = \frac{1}{\Gamma(\frac{f}{2})} e ^{-\frac{w}{2g}} (\frac{w}{2g}) ^{\frac{f}{2} - 1} d(\frac{w}{2g})

f, g sont de la forme :

f = \frac{(a (n_A - 1) + b (n_B - 1)) ^2}{a ^2 (n_A - 1) + b ^2 (n_B - 1)}

g = \frac{a ^2 (n_A - 1) + b ^2 (n_B - 1)}{a (n_A - 1) + b (n_B - 1)}

Dés lors on peut approximer la statistique de test T par une loi de Student à :

f = \frac{(a \sigma_A ^2 + b \sigma_B ^2) ^2}{\frac{a ^2 \sigma_A ^2}{n_A - 1} + \frac{b ^2 \sigma_B ^2}{n_B - 1}} degrés de liberté

Ce critère, restreint dans un premier temps au cas où X se divise en deux sous-groupes, peut également être utiliser lorsque le nombre de groupes est plus grand. On se retrouve toujours dans l’approximation par une loi de Student dont les degrés de liberté généralisés sont alors:

f = \frac{(\sum_{k = 1} ^K \sigma_k ^2) ^2}{\sum_{k = 1} ^K \frac{\lambda_k \sigma_k ^4}{n_k - 1}} = \frac{(\sum_{k = 1} ^K \sigma_k ^2) - 2 (\sum_{k = 1} ^K \frac{\lambda_k ^2 \sigma_k ^2}{n_k + 1})}{\sum_{k = 1} ^K \frac{\lambda_k ^2 \sigma_k ^4}{n_k + 1}}

, avec \lambda = (\lambda_1, \cdots, \lambda_K) les paramètres généralisés pour lesquels nous avions \lambda_1 = a, \lambda_2 = b dans le cas à deux groupes. \forall k \in [1,K], n_k la taille de X|_{Y = k} et \sigma_k sa variance observée.

\bullet Exemple:

Cas à deux échantillons: le test de Welch

Soit la variable aléatoire X distribuée selon les deux groupes \lbrace A, B \rbrace d’une variable Y:

\begin{tabular}{|c|c|} \hline Y & X \\ \hline A & 3.1101 \\ \hline A & 4.1008 \\ \hline A & 4.7876 \\ \hline A & 7.0677 \\ \hline A & 6.0858 \\ \hline A & 4.9309 \\ \hline A & 4.0449 \\ \hline A & 3.0101 \\ \hline A & 5.9495 \\ \hline A & 6.8729 \\ \hline B & 1.0898 \\ \hline B & 1.9868 \\ \hline B & 2.9853 \\ \hline B & 10.0080 \\ \hline B & 8.9052 \\ \hline B & 8.0411 \\ \hline B & 2.0826 \\ \hline B & 1.0536 \\ \hline B & 9.0649 \\ \hline B & 10.0826 \\ \hline \end{tabular}

Ci-dessous, les boxplots des distributions de X restreinte au groupe « A » (en vert) et au groupe « B » (en rouge) permet de voir que visuellement les moyennes des deux groupes sont proches.

add

On assumera ici le fait que X restreint au groupe A et au groupe B ne suivent pas une loi normale étant donné qu’il s’agit d’un exemple d’application

On a, respectivement pour les deux sous-échantillons, les moyennes et variances suivantes:

\mu_A = 4.99603, \sigma_A ^2 = 2.129509 ;

\mu_B = 5.52999, \sigma_B ^2 = 15.73774.

On obtient alors la statistique de test :

T = \frac{4.99603 - 5.52999}{\sqrt{\frac{2.129509}{10} + \frac{15.73774}{10}}} = \frac{-0.53396}{\sqrt{1.786725}} = -0.399466

Et les degrés de liberté:

\frac{(\frac{2.129509}{10} + \frac{15.73774}{10})^2}{\frac{(\frac{2.129509}{10})^2}{9} + \frac{(\frac{15.73774}{10})^2}{9}} = \frac{1.786725 ^2}{0.005038676 + 0.2751961} = \frac{3.192386}{0.2802348} = 11.39183

On cherche à tester bilatéralement le rejet de l’hypothèse H_0. Sous cette approche, on génère une loi de Student à 11.39183 degrés de liberté et l’on reporte sur le graphe ci-dessous les valeurs seuils qui correspondent aux quantiles à 20 \%, 10 \%, 5 \% et 1 \% dans le cadre bilatéral,

add1

En se reportant aux valeurs de la table de la loi de Student ci-dessus, on constate que,

T_{18,1 \%,\mbox{bilat\'eral}} = 3.08447 > T_{18,5 \%,\mbox{bilat\'eral}} = 2.191784 > T_{18,10 \%,\mbox{bilat\'eral}} = 1.790249 > T_{18,20 \%,\mbox{bilat\'eral}} = 1.360444 > |T_{obs}| = 0.399466

Maintenant, on calcul la p-valeur exacte associée à la statistique de test T_{obs} de Student dans le cadre bilatéral et pour 11.39183 degrés de liberté. On commence par appliquer le changement de variable,

z = \frac{\frac{(-0.399466)^2}{11.39183}}{1 + \frac{(-0.399466)^2}{11.39183}} = 0.01381417

On a,

p = 1 -  \frac{B(0.01381417,\frac{1}{2},\frac{11.39183}{2})}{B(\frac{1}{2},\frac{11.39183}{2})}

= 1 - \frac{0.2300616}{0.7591225}

= 1 - 0.3030626

= 0.696934557 > 5 \%

On ne pourra pas rejeter H_0 au risque de 5 \%. On en conclut que les moyennes des deux sous-échantillons sont égales, \mu_A = \mu_B.

Cas à plusieurs échantillons: l’ANOVA de Welch

Soit la variable aléatoire X distribuée selon les trois groupes \lbrace A, B, C \rbrace d’une variable Y:

\begin{tabular}{|c|c|} \hline Y & X \\ \hline A & 8.1472 \\ \hline A & 9.0579 \\ \hline A & 1.2699 \\ \hline A & 9.1338 \\ \hline A & 6.3236 \\ \hline A & 0.9754 \\ \hline A & 2.7850 \\ \hline B & 5.4688 \\ \hline B & 9.5751 \\ \hline B & 9.6489 \\ \hline B & 1.5761 \\ \hline B & 9.7059 \\ \hline B & 9.5717 \\ \hline C & 4.8538 \\ \hline C & 8.0028 \\ \hline C & 1.4189 \\ \hline C & 4.2176 \\ \hline C & 9.1574 \\ \hline C & 7.9221 \\ \hline C & 9.5949 \\ \hline \end{tabular}

Ci-dessous, les boxplots des distributions de X restreinte au groupe « A » (en vert), « B » (en bleu) et « C » (en rouge) permet de voir que visuellement les moyennes des trois échantillons sont différentes.

add

On assumera ici le fait que X restreint au groupe A, B et C ne suivent pas une loi normale étant donné qu’il s’agit d’un exemple d’application

On a pour les trois sous-échantillons les moyennes et variances suivantes:

\mu_A = 5.384686, \mu_B = 7.591083, \mu_C = 6.74525

\sigma_A ^2 = 13.19884, \sigma_B ^2 = 11.45007, \sigma_C ^2 = 9.107011

Et n_A = n_C = 7, n_B = 6. On obtient alors la statistique de test qui vaut:

F = \frac{\frac{1}{3 - 1} (w_1 (5.384686 - \bigtriangleup) ^2) + w_2 (7.200043 - \bigtriangleup) ^2) + w_3 (6.71895 - \bigtriangleup) ^2)}{1 + \frac{2 (3 - 2)}{ 3 ^2 - 1} ((\frac{1}{7 - 1})(1 - \frac{w_1}{w}) ^2 + (\frac{1}{6 - 1})(1 - \frac{w_2}{w}) ^2 + (\frac{1}{7 - 1})(1 - \frac{w_3}{w}) ^2)}

Avec :

w_1 = \frac{7}{13.19884} = 0.5303496 ;

w_2 = \frac{6}{11.45007} = 0.5240143 ;

w_3 = \frac{7}{9.107011} = 0.7686386 ;

w = 0.5303496 + 0.5240143 + 0.7686386 = 1.823002 ;

\bigtriangleup = \frac{0.5303496 \times 5.384686 + 0.5240143 \times 7.591083 + 0.7686386 \times 6.4525}{1.823002} = \frac{11.79324}{1.823002} = 6.469132

D’où,

F = \frac{\frac{1}{2} (0.5303496 \times (5.384686 - 6.469132) ^2 + 0.5240143 \times (7.591083 - 6.469132) ^2 + 0.7686386 \times (6.4525 - 6.469132) ^2)}{1 + \frac{1}{4} \times ((\frac{1}{6})(1 - \frac{0.5303496}{1.823002})^2 + (\frac{1}{5})(1 - \frac{0.5240143}{1.823002})^2 + (\frac{1}{6})(1 - \frac{0.7686386}{1.823002})^2)}

=\frac{\frac{1.283532}{2}}{1 + \frac{0.1666667 \times 0.502793 + 0.2 \times 0.5077335 + 0.1666667 \times 0.3345079}{4}}

= \frac{0.6417658}{1.06027422}

= 0.6052828

Quant aux degrés de liberté, on les détermine comme suit:

(3 - 1, \frac{3 ^2 - 1}{3 \times ((\frac{1}{6})(1 - \frac{0.5303496}{1.823002})^2 + (\frac{1}{5})(1 - \frac{0.5240143}{1.823002})^2 + (\frac{1}{6})(1 - \frac{0.7686386}{1.823002})^2)}) = (2,\frac{8}{0.7232906}) = (2,11.06056)

On cherche à tester unilatéralement le rejet de l’hypothèse H_0. Sous cette approche, on génère une loi de Fisher à (2,11.06056) degrés de liberté et l’on reporte sur le graphe ci-dessous les valeurs seuils qui correspondent aux quantiles à 20 \%, 10 \%, 5 \% et 1 \% dans le cadre unilatéral,

add2

En se reportant aux valeurs de la table de la loi de Fisher ci-dessus, on constate que,

F_{2,11.06056,1 \%,\mbox{unilat\'eral}} = 7.186948 > F_{2,11.06056,5 \%,\mbox{unilat\'eral}} = 3.97583 > F_{2,11.06056,10 \%,\mbox{unilat\'eral}} = 2.856008 > F_{2,11.06056,20 \%,\mbox{unilat\'eral}} = 1.868102 > F_{obs} = 0.6052828

Maintenant, on calcul la p-valeur exacte associée à la statistique de test F_{obs} de Fisher dans le cadre unilatéral et pour le couple de paramètres: (2,11.06056). Dans un premier temps on applique la transformation,

z = \frac{2 \times 0.6052828}{2 \times 0.6052828 + 11.06056} = \frac{1.210566}{12.27113} = 0.09865155

On calcul ensuite la p-valeur,

p = 1 -  \frac{B(0.09865155,2,11.06056)}{B(2,11.06056)}

= 1 - \frac{0.07901114}{0.1808227}

= 1 - 0.4369537

= 0.5630463 > 5 \%

On ne pourra  pas rejeter H_0 au risque de 5 \%. Et on en conclut que \mu_A = \mu_B = \mu_C contrairement à ce que l’on pensait avoir observé sur le boxplot.

\bullet Application sous R:

Cas à deux échantillons: le test de Welch

Dans un premier temps, on charge notre exemple:

X_Y1 = c(3.1101,4.1008,4.7876,7.0677,
6.0858,4.9309,4.0449,3.0101,5.9495,6.8729)

X_Y2 = c(1.0898,1.9868,2.9853,10.0080,
8.9052,8.0411,2.0826,1.0536,9.0649,10.0826)

Package et fonction R: http://stat.ethz.ch/R-manual/R-patched/library/stats/html/t.test.html

La fonction t.test du package stats permet d’appliquer le test T de Welch. Le package se charge automatiquement lors du lancement de R.

On lance le test T de Welch afin de savoir si les moyennes de X_{Y = A} et X_{Y = B} sont différentes. On procède de la manière suivante:

t.test(X_Y1,X_Y2,var.equal=FALSE)

Parmi les éléments à insérer les plus importants il faut relever:

– Les deux échantillons sur lesquels tester l’égalité des moyennes : X_Y1, X_Y2 ;

– Si les variances ne sont pas égales (test de Welch) ou si elles le sont (test de Student): var.equal = FALSE ;

– On aurait pu rajouter l’instruction « alternative » qui permettra de déterminer si on veut procéder à un test bilatéral, unilatéral à gauche ou à droite. Par défaut le logiciel R lance le test dans un cadre bilatéral.

On obtient alors les résultats suivants:

add.png

On vérifie:

– Les données utilisées: « data: X_Y1 and X_Y2 » ;

– La statistique de test T: « t = -0.39947 » , qui est la même que celle obtenue lors des calculs manuels (cf section « Exemple ») ;

– Les degrés de liberté ajustés pour le cas où les variances sont inégales : « df = 11.392 » , qui sont les mêmes que ceux obtenus lors des calculs manuels (cf section « Exemple ») ;

– La p-valeur: « p-value = 0.6969 » , qui est la même que celle obtenue lors des calculs manuels (cf section « Exemple ») ;

– Et le type de test effectué: « alternative hypothesis: true mean is not equal to 0 » .

Cas à plusieurs échantillons: l’ANOVA de Welch

Dans un premier temps, on charge notre exemple:

X_Y1 = c(8.1472,9.0579,1.2699,9.1338,6.3236,0.9754,2.7850)

X_Y2 = c(5.4688,9.5751,9.6489,1.5761,9.7059,9.5717)

X_Y3 = c(4.8538,8.0028,1.4189,4.2176,9.1574,7.9221,9.5949)

Package et fonction R: https://www.rdocumentation.org/packages/onewaytests/versions/2.4/topics/welch.test

La fonction welch.test du package onewaytests permet d’appliquer l’ANOVA de Welch.

On lance l’ANOVA de Welch afin de savoir si les moyennes de X_{Y = A}, X_{Y = B} et X_{Y = C} sont différentes. On procède de la manière suivante:

DATA = data.frame(Y = c(rep(« A »,7),rep(« B »,6),rep(« C »,7)),X = c(X_Y1,X_Y2,X_Y3))
welch.test(X~Y,DATA)

Parmi les éléments à insérer les plus importants il faut relever:

– La variable polychotomique Y qui permet de distinguer les différents sous-échantillons de X : X ~ Y ;

– La matrice de données contenant les données : DATA ;

On obtient alors les résultats suivants:

add

On vérifie:

– Les données utilisées: « data : X and Y » ;

– La statistique de test F: « statistic = 0.6052833 » , qui est la même que celle obtenue lors des calculs manuels (cf section « Exemple ») ;

– La p-valeur: « p.value = 0.563046 » , qui est la même que celle obtenue lors des calculs manuels (cf section « Exemple »).

\bullet Application sous SAS:

Cas à deux échantillons: le test de Welch

Soit l’exemple suivant:

data E;
input Y $1. X;
cards;
A 3.1101
A 4.1008
A 4.7876
A 7.0677
A 6.0858
A 4.9309
A 4.0449
A 3.0101
A 5.9495
A 6.8729
B 1.0898
B 1.9868
B 2.9853
B 10.0080
B 8.9052
B 8.0411
B 2.0826
B 1.0536
B 9.0649
B 10.0826
;
run;

Procédure SAS : http://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/viewer.htm#statug_ttest_sect011.htm

On lance le test T de Welch afin de savoir si X|_{Y = "A"} et X|_{Y = "B"} ont la même moyenne. On procède de la manière suivante:

proc ttest data = E;
var X;
class Y;
ods exclude Equality Statistics ConfLimits;
run;

Parmi les éléments à insérer les plus importants il faut relever:

– La table contenant nos données: data = E ;

– L’échantillon que l’on veut comparer à la loi fixée: var X ;

– La variable binaire Y permettant de scinder X en X|_{Y = "A"} et X|_{Y = "B"}: class Y ;

– On aurait pu rajouter l’instruction « side » après l’instruction « data » de la première ligne qui permettra de déterminer si on veut procéder à un test bilatéral, unilatéral à gauche ou à droite. Par défaut le logiciel SAS lance le test dans un cadre bilatéral ;

– L’ods output est utilisé afin de filtrer les résultats et n’afficher que ceux dont on a besoin.

On obtient alors les résultats suivants:

add

La ligne « Pooled » correspond au cas où X|_{Y = "A"} et X|_{Y = "B"} ont même variance tandis que la colonne « Satterthwaite » correspond à celui où les variances sont différentes (le logiciel SAS lance automatiquement la version de Student). On vérifie:

– Dans la colonne « Valeur du test t » , la statistique de test T: « -0.40  » , qui est la même que celle obtenue lors des calculs manuels (cf section « Exemple ») ;

– Dans la colonne « Pr > |t|  » , la p-valeur : « = 0.6969 » , qui est la même celle obtenue lors des calculs manuels (cf section « Exemple »).

Cas à plusieurs échantillons: l’ANOVA de Welch

Soit l’exemple suivant:

data E;
input Y $1. X;
cards;
A 8.1472
A 9.0579
A 1.2699
A 9.1338
A 6.3236
A 0.9754
A 2.7850
B 5.4688
B 9.5751
B 9.6489
B 1.5761
B 9.7059
B 9.5717
C 4.8538
C 8.0028
C 1.4189
C 4.2176
C 9.1574
C 7.9221
C 9.5749
;
run;

Procédure SAS : https://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/viewer.htm#anova_toc.htm

On lance l’ANOVA de Welch afin de savoir si X|_{Y = "A"}, X_{Y = "B"} et X|_{Y = "C"} ont la même moyenne. On procède de la manière suivante:

proc anova data = E;
class Y;
model X = Y;
means Y / welch
ods exclude ClassLevels NObs FitStatistics ModelANOVA OverallANOVA Means;
run;

Parmi les éléments à insérer les plus importants il faut relever:

– La table contenant nos données: data = E ;

– La variable polychotomique Y permettant de scinder X en X|_{Y = "A"}, X|_{Y = "B"} et X|_{Y = "C"}: class Y ;

– La variable X sur laquelle appliquer l’ANOVA : model X = Y ;

– L’instruction permettant de spécifier l’utilisation de l’ANOVA de Welch en plus de celle de Fisher : means Y / welch ;

– L’ods output est utilisé afin de filtrer les résultats et n’afficher que ceux dont on a besoin.

On obtient alors les résultats suivants:

add

On vérifie:

– Dans la colonne « Valeur F » , la statistique de test T: « 0.61  » , qui est la même que celle obtenue lors des calculs manuels (cf section « Exemple ») ;

– Dans la colonne « Pr > F  » , la p-valeur : « 0.5630 » , qui est la même celle obtenue lors des calculs manuels (cf section « Exemple »).

\bullet Bibliographie:

– The generalization of « Student’s » problem when several different population variances are involved de Bernard Lewis Welch.

– Ajustement des distributions Pearson Type 3, Gamma, Gamma généralisée, Log-Pearson Type 3 et log-Gamma de Bernard Bobée et Lyne Des Groseilliers

– Le site: http://www.real-statistics.com/one-way-analysis-of-variance-anova/welchs-procedure/

Répondre

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l'aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s