Le test de Ansari-Bradley

add3

\bullet Présentation:

Né suite aux travaux de A. R. Ansari et de Richard A. Bradley en 1959, le test de Ansari-Bradley est une approche non paramétrique permettant de tester si X|_{Y = g_1}, \dots, X|_{Y = g_K}, les sous-échantillons d’une variable continue X distribuée en fonction des K \geq 2 groupes d’une variable qualitative Y, ont même fonction de répartition.

Le test de Ansari-Bradley se base sur le même principe que ceux de Klotz, Conover, Siegel-Tukey et Savage, à savoir la construction d’une fonction score répartissant la distribution des rangs de X autour de la position centrale symbolisée par leur moyenne.

Notons que le test de Ansari-Bradley est semblable à celui de Siegel-Tukey.

\bullet Le test:

Hypothèse préliminaire: X variable continue ou ordinale et Y variable qualitative à K \geq 2 modalités.

La formule de la fonction score intervenant pour calculer la statistique de test d’Ansari-Bardley est:

f(R_i) = \frac{n + 1}{2} - | R_i - \frac{n + 1}{2} |

Avec R_i le rang associé à X_i. La statistique de test a alors pour formule:

AB = \frac{\sum_{k = 1} ^K \frac{1}{n_k} [\sum_{i = 1} ^{n_k} (f(R|_{Y = k}))_i - n_k \overline{f(R)}] ^2 }{T ^2}

Avec T ^2 = \frac{\sum_{i = 1} ^n [f(R_i) - \overline{f(R)}] ^2}{n - 1}.

Elle suit une loi du \chi ^2  à (K - 1) degrés de liberté et l’hypothèse H_0 est: « Distribution identique de la variable au sein des K groupes / F_1 = \cdots = F_K« .

Ci-dessous le tableau de la loi du \chi ^2.

add

Tendance pour le rejet de H_0:

Plus la statistique de test AB de Ansari-Bradley est grande et plus nous avons de chance de rejeter H_0, ce qui revient à dire que,

\sum_{k = 1} ^K \frac{1}{n_k} [\sum_{i = 1} ^{n_k} (f(R|_{Y = g_k}))_i - n_k \overline{f(R)}] ^2 \rightarrow \infty \Rightarrow rejet de H_0

Ce qui implique,

\exists k / \frac{1}{n_k} [\sum_{i = 1} ^{n_k} (f(R|_{Y = g_k}))_i - n_k \overline{f(R)}] ^2 \rightarrow \infty

\Rightarrow \exists k / \sum_{i = 1} ^{n_k} (f(R|_{Y = g_k}))_i >>>> n_k \overline{f(R)}

Soit que la somme des rangs pour l’un des groupes est nettement plus grande que la moyenne des rangs pondérés, impliquant que l’une des distributions est nettement différente des autres.

\bullet Tendance lorsque n \longrightarrow \infty:

Nous proposons ici de vérifier si le test de Ansari-Bradley est sensible aux grands échantillons ou non. Étant donné la formule de la statistique de test, et qui fait intervenir régulièrement les effectifs n_k des différents groupes, il semblerait que ce soit le cas.

Le tableau ci-dessous présente l’évolution des p-valeurs associées aux statistiques de test calculées sur plusieurs simulations dans le cas où les distribution sont différentes d’un groupe à l’autre.

add

Globalement, quelque soit la taille de l’échantillon, le test statistique rejette H_0, ce qui est en accords avec nos hypothèses.

Procédons à la même expérience mais cette fois-ci dans un cas où les différentes distributions ne devraient pas être statistiquement différentes. Le tableau ci-dessous présente ces résultats.

add

Jusqu’à N = 1 000 nous restons cohérent avec nos hypothèses, cependant nous voyons qu’à partir d’un échantillon de taille 10 000, le test rejette H_0 à tort.

Nous en déduisons que le test de Ansari-Bradley est influencé par la taille de l’échantillon.

\bullet Annexe théorique:

Cette partie de l’article présente une esquisse des démonstrations pour la fonction génératrice, l’espérance et la variance de la statistique de test AB de Ansari-Bradley dans le cas où K = 2.

Démonstration de la fonction génératrice:

Sous l’hypothèse nulle H_0 chacune des \begin{pmatrix} n_1 + n_2 \\ n_1 \end{pmatrix} combinaisons des rangs R  associés à X sont équivalentes. La probabilité des différentes valeurs de AB est alors obtenue comme produit des 1 / \begin{pmatrix} n_1 + n_2 \\ n_1 \end{pmatrix}.

De ce constat, nous pouvons écrire la probabilité de la manière suivante:

P(AB | n_1, n_2 + 1) = f(AB | n_1, n_2) / \begin{pmatrix} \\ n_1 + n_2 \\ n_1 \end{pmatrix}

, avec la fonction de densité:

f(AB | n_1, n_2 + 1) = f(AB | n_1, n_2) + f(AB - N - 1 | n_1 - 1, n_2 + 1)

, en posant n_1 + n_2 = 2N ou n_1 + n_2 = 2N + 1.

Le premier terme étant la fréquence de AB quand AB ne contient pas l’élément de rang N + 1 et le second le cas inverse.

Alternativement, nous pouvons écrire,

(n_1 + n_2 + 1) P(AB | n_1, n_2 + 1) = (n_2 + 1) P(AB | n_1, n_2) + n_1 P(AB - N - 1 |n_1 - 1, n_2 + 1)

La fonction génératrice est alors:

g(u,v) = \prod_{i = 1} ^N ( 1 + u ^i v) ^2 si n_1 + n_2 = 2 N

g(u,v) = ( 1 + u ^{n + 1} v) \prod_{i = 1} ^N ( 1 + u ^i v) ^2 si n_1 + n_2 = 2 N + 1

, dont la fonction de densité f(AB |n_1, n_2) est s’inscrit comme étant le coefficient u ^{AB} v ^{n_1}.

L’espérance et la variance de AB:

En reprenant la notation n_1 + n_2 = 2 N, nous avons:

E[AB] = n_1 E_1(r) = \frac{n_1 (n_1 + n_2 + 2)}{4}

, Avec E_1[r] l’espérance basée sur l’intégrale choisie aléatoirement parmi les N premières intégrales.

En posant:

E_1 [r ^2], l’espérance basée sur le carré de l’une des intégrales choisie aléatoirement parmi les N premières,

E_1 [rs], l’espérance basée sur le produit de deux intégrales distinctes et choisies aléatoirement parmi les N premières,

E_2 [rs], l’espérance basée sur le produit de deux intégrales distinctes (sous contrainte d’être séparées au moins par un pas de deux) et choisies aléatoirement parmi les N premières,

Nous avons,

E[AB ^2] = n_1 E_1 (r ^2) = n_1 E_1 (r ^2) + n_1 (n_1 - 1) E[rs]

 = \frac{(N + 1) (2 N + 1)}{6} + n_1 (n_1 - 1) [2 \begin{pmatrix} N \\ 2 \end{pmatrix} E_1 (rs) + 2 \begin{pmatrix} N \\ 2 \end{pmatrix} ^2 E_2 (rs)] / 2 \begin{pmatrix} 2 N \\ 2 \end{pmatrix}

 = \frac{(N + 1) (2 N + 1)}{6} + n_1 (n_1 - 1) [2 \begin{pmatrix} N \\2 \end{pmatrix} \frac{(3 N + 2) (N + 1)}{12} + 2 \begin{pmatrix} N \\ 2 \end{pmatrix} ^2 \frac{(N + 1) ^4}{4}] / 2 \begin{pmatrix} 2 N \\ 2 \end{pmatrix}

 = [n_1 \frac{(N + 1) (2 N + 1)}{6}] + [ \frac{n_1 (n_1 - 1) (N - 1) (3 N ^2 + N - 1)}{6 (2 N - 1)}]

La variance peut alors se calculer à son tour,

V(AB) = E[AB ^2] - E[AB] ^2 = \frac{n_1 n_2 (n_ 1 + n_2 - 2) (n_1 + n_2 + 2)}{48 (n_1 + n_2 - 1)}

\bullet Exemple:

Soit l’échantillon ci-dessous:

add

Nous présentons ci-dessous les trois courbes de densité liées à X|_{Y = 1} (en vert), X_{Y = 2} (en bleu) et X|_{Y = 3} (en rouge):

add

Cette représentation des données permet de voir que les si les distributions de X|_{Y = 2} et X|_{Y = 3} semblent plus ou moins similaires, elles semblent différer de celle de X|_{Y = 1}. Vérifions-le statistiquement.

Commençons par la transformation de X en vecteur de rangs R que nous séparons directement en fonction des trois différents groupes de Y:

\begin{cases} R|_{Y = 1} = (12,13,2,14,9,15) \\ R|_{Y = 2} = (8,17,19,4,20,16) \\ R|_{Y = 3} = (7,11,3,6,15,10,18) \end{cases}

Ensuite, calculons la fonction score de Ansari-Bradley f(R),

f(R) = (\frac{20 + 1}{2} - |12 - \frac{20 + 1}{2}|, \cdots, \frac{20 + 1}{2} - |18 - \frac{20 + 1}{2}|)

= (9, 8, 2, 7, 9, 1, 5, 8, 4, 2, 4, 1, 5, 7, 10, 3, 6, 6, 10, 3)

Nous avons alors,

\overline{f(R)} = 5.5,

\sum_{i = 1} ^7 (f(R|_{Y = 1}))_i = 41

\sum_{i = 1} ^6 (f(R|_{Y = 2}))_i = 24

\sum_{i = 1} ^7 (f(R|_{Y = 3}))_i = 45

Maintenant, calculons le dénominateur de AB,

T ^2 = \frac{\sum_{i = 1} ^{20} [\overline{f(R|_{Y = k})} - 5.5] ^2}{20 - 1} = \frac{165}{19} = 8.684211

Nous pouvons désormais calculer la statistique de test de Ansari-Bradley,

AB = \frac{1}{8.684211} \times \sum_{k = 1} ^3 \frac{1}{n_k} [\sum_{i = 1} ^{n_k} (f(R|_{Y = k}))_i - n_k \times 5.5] ^2

 = \frac{1}{8.684211} \times [\frac{1}{7} \times (41 - 7 \times 5.5) ^2 + \frac{1}{6} \times (24 - 6 \times 5.5) ^2 + \frac{1}{7} \times (45 - 7 \times 5.5) ^2]

 =\frac{1}{8.684211} \times [0.8928571 + 13.5 + 6.035714]

 = \frac{20.42857}{8.684211}

= 2.352381

Si nous reportons la valeur de la statistique de test de Ansari-Bradley à la table de la loi du \chi ^2 pour 3 - 1 = 2 degrés de liberté nous obtenons une p-valeur de 0.3085 >>>>> 5 \%. Nous en concluons que nous ne pouvons rejeter H_0 et donc que les distributions de X|_{Y = 1}, X|_{Y = 2}, X|_{Y = 3} sont identiques.

\bullet Application informatique:

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

Package et fonction R: http://finzi.psych.upenn.edu/library/coin/html/ScaleTests.html

\bullet Bibliographie:

– Comparaison de populations, tests non paramétriques de Ricco Rakotomalala

– Rank sum tests for dispersion de A. R. Ansari et Richard A. Bradley