• Aucun résultat trouvé

Statistiques non-paramétriques Ch.1. Tests non-paramétriques 2018-19

N/A
N/A
Protected

Academic year: 2022

Partager "Statistiques non-paramétriques Ch.1. Tests non-paramétriques 2018-19"

Copied!
99
0
0

Texte intégral

(1)

Statistiques non-paramétriques Ch.1. Tests non-paramétriques 2018-19

M2 CEE

Pr. Philippe Polomé, Université Lumière Lyon 2

(2)

I

Hyp. de normalité pas facilement acceptable

I

Données nominales ou ordinales [+loin]

I Ou des outliers qu’on ne veut pas enlever I

Tests sur des fréquences, médianes ou quantiles

I plutôt que des moyennes ou des variances

I Souvent les mesures associées au revenu sont asymétriques I dépenses, dispositions à payer...

I Alors, la médiane représente mieux les obs. que la moyenne, I qui est tirée dans la queue asymétrique de la distribution

(3)

Quand utiliser ?

I

Quand on a peu de données

I Les tests np ont peu de puissance (ci-dessous)

I mais les tests param. peuvent donner des résultats aberrants I si l’hyp. de normalité est fausse

I

Inconvénients

I Est plus une collection de recettes I Qu’une méthodo bien claire I Donc : difficile de s’y retrouver

(4)

Rappel sur les tests Tests

Corrélation non-paramétrique

(5)

Rappel sur les tests

I

Les tests ont pour objet une hyp. nulle

H0

d’égalité

I p.e. la moyenne dans une certaine population = celle d’un

autre groupe

I Si elle est rejetée, on peut accepter l’alternativeH1

I H1 peut être une6=, ou une inégalité si on sait qu’un des côtés de l’= est impossible

I

Les tests sont construits sur plusieurs autres hyp. que

H0

I Si l’une de ces hyp. vient à faillir, les résultats du test sont aberrants

I Mais c’est difficile à avérer

I Moins un test présuppose, plus il est général

(6)

I

On calcule une statistique du test

I Cette stat suit une distribution connuesi H0 est vraie I p.e.χ2 ,t,F,... – c’est la partie difficile à démontrer I dépend aussi de la taillende l’échantillon

I

On compare la stat avec une valeur tabulée de cette distribution connue

I Cette valeur tabulée est choisie arbitrairement I Ce choix est le niveau de significativitéαdu test I On prend généralement 5%

I Si la stat est + grande, en valeur absolue, que cette valeur tabulée,

I onRH0

(7)

Rappel des principaux tests paramétriques

I

test Z

I Tout test dont la distribution de la stat sousH0 est approximée par la normale

I À cause du thm limite centrale, beaucoup de stat de test convergent à la normale dans de grands échantillons

I p.e. la t-stat converge à une normale pourn>30 dans certaines conditions

I Approprié pour comparer des moyennes I

test t : somme de normales

I Approprié pour comparer des moyennes, avec moins de données, mais normales

I

test F : ratio de t

I Sert à comparer des variances I

test

χ2

: somme de carrés de normales

I Nombreux usages en np, mais aussi en paramétrique

(8)

I

Erreur de type I :

RH0

alors que

H0

est vraie

I Pr{RH0|H0vraie}=α

I Parfois appelé taille du test

I RH0|H0vraie est unfaux positif: détecter une différence, alors qu’il n’y en a pas

I Rem. dans une régression, un régresseur non pertinent a 5%

de passer pour significatif

I Plusαest grand, plus onRH0 faussement

I p.e. un coef.βd’une régression est + facilement significatif quandα=.1 que lorsqueα=.05

I

Erreur de type II :

¬RH0

alors que

H0

est fausse

I Pr{¬RH0|H0fausse}=β

I CettePrdécroit à mesure quencroit

I 1−β= Pr{RH0|H0fausse}est appelépuissance du test I Mais pas connu en pratique car dépend de la “fausseté” deH0

(9)

Sommaire

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(10)

I ∃

une vingtaine de tests np connus

I D’autres moins connus

I et une demi-douzaine de mesure de corrélation np I Selon les situations : mesure & échantillon I On va voir les mesures ci-dessous

I

L’échantillon

I 1 échantillon I 2 ou +

I indépendants ou reliés

I

Au sein d’un échantillon

I Pour les tests, les obs doivent être indépendantes I Pour les mesures de corrélations, non

(11)

La mesure

I

Les données sont toutes codées par des chiffres

I Mais ces chiffres n’ont pas tous la même signification I Nominal - Ordinal - Cardinal

(12)

I

= classification

I p.e. couleurs

I Les classes sont mutuellement exclusives

I

La seule relation entre classes est l’équivalence (=)

I Pas de≥,≤ou de +,-,×,÷

I

Seul le mode et les fréquences sont définis

I Classe la + fréquemment observée

I Médiane, moyenne, variance ne sont pas définies I

On teste sur des fréquences

(13)

Mesure ordinale (classement, rangs, hiérarchie)

I

Il y a un ordre entre les classes

I + grands, difficiles, ...

I Cet ordre ne pourrait prévaloir qu’entre certaines classes mais ici il faut qu’il prévale partout

I

Relations d’équivalence = et d’ordre

I ordre : irréflexif, asymétrique et transitif I

Pas d’opérations +, -,

×,÷

I La distance entre 2 classes n’a pas de sens

I Même si une classe est codée 1 et une autre 3, cette dernière n’est pas “deux de plus” que la 1º

I La moyenne et la variance ne sont donc pas définies

I Mais la médiane et les quantiles (percentiles, déciles...) bien I On teste à partie de rangs / classements

I

Les tests applicables au nominal sont applicables à l’ordinal

(14)

I

La distance entre les classes est définie

I p.e. la température

I

La même relation d’ordre prévaut

I mais en plus les opérations sont définies I

Tous les moments ont du sens

I moyenne, variance, ...

I On teste sur ces moments dit des paramètres I De localisation ou autre

I Les6=paramètres d’une distribution

I

Les tests applicables à l’ordinal et/ou au nominal sont applicables à l’intervalle

I Les tests param. ne sont applicables qu’à la mesure d’intervalle I p.e. les tests t & F des régressions

(15)

Sommaire

Rappel sur les tests Tests

Corrélation non-paramétrique

(16)

Mesure 1 éch. 2 échantillons k éch.

Reliés Indépendants Reliés Indép.

Nomin. Binomialχ2 McNemar Fisherχ2 Cochran Q χ2 Ordin.

Runs Médiane Médiane

Kolmogorov Sign Mann-Whitney U Friedman Kruskal-Walis

-Smirnov K-S 2-way 1-way

(K-S) Wilcoxon Wald-Wolfowitz ANOVA ANOVA

I

Seuls les tests colorés sont présentés

I Info abondante, souvent sur Wikipedia et aide de R

(17)

Sommaire

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(18)

I

Un test

χ2

est tout test d’hyp

I dont la stat suit une dist.χ2 quandH0 est vraie I Sans autre précision, il s’agit svt du testχ2 de Pearson I qui est celui qui nous intéresse

I Même siχ2est une dist. paramétrique, le test ne porte pas sur un paramètre

I

2 types de comparaison

Ajustement

tester si une distribution observée diffère d’une distribution théorique

I Pour un éch.

I “Goodness-of-fit”

Indépendance

tester si des obs non reliées sur 2 variables sont indépendantes l’une de l’autre

I Pour 2+ éch.

I s’exprime entable de contingence

(19)

χ

2

1 échantillon – Nominal

I

On cherche à comparer

I un groupe de fréquences absolues observées I kcatégoriesi sont observées

I avec un groupe de fréquences théoriques I

La stat de test est

χ2 =

k

X

i=1

(Oi−Ei)2 Ei Oi =

nombre de cas observés dans la cat.

i Ei =

nombre de cas espérés dans la cat.

i

sous

H0

I Il faut donc spécifier une dist espérée I

S’il y a peu de

6=

entre

O

et

E

I donc si les fréq. obs. sont proches des espérées

I alors,χ2 sera petit, donc pas dans les extrêmes de la dist.

I

Le nombre de degrés de liberté est

k−p

I pest le nombre de paramètres de la dist. espérée I p.e. 2 si c’est une normale (espérance, variance)

(20)

I

On lance un dé à 6 faces 60 fois

I Le dé est-il pipé (biaisé) selon le test deχ2 de Pearson ? I

Dé régulier

I Pr{face}=1/6

i Oi Ei (Oi−EE i)2

i

1 5 10 2.5

2 8 10 .4

3 9 10 .1

4 8 10 .4

5 10 10 0

6 20 10 10

I k =

6

I

Degrés de liberté 6-1=5

I Je pense que c’est

plutôt 4 car U(a,b) I χ2 =

13

.

4

I χ2.95;5=?

I Rqchisq(.95, df=5)= 11.07

I RH0

(21)

χ

2

2 ou + échantillons indépendants – Nominal

Figure –Table de contingence

Groupe

i

Résultat

j P

ligne

(échantillon) 1 2

. . .

C

1

O11 O1.

2 ...

Oij Oi.

R

ORC

P

col

O.1 O.j

N

I

Table de contingence : fréq. absolues observées

Oij

I H0

: La distribution des résultats est indépendante des groupes

I Peut-on dire que les lignes sont indépendantes entre elles ? I On ne précise pas de quelle distribution viendraient ces lignes

(22)

I

Il y a N observations au total

I

Somme par ligne (résultats) :

Oi.=P

jOij

I Soitpi.=Oi./N

I

Somme par colonne (groupes) :

O.j =P

iOij I Soitp.j =O.j/N

I

On définit les fréquences absolues espérées comme

Eij =Npi.p.j

I

La stat de test est

χ2 =

R

X

i=1 C

X

j=1

(Oij −Eij)2 Eij

(23)

χ

2

2 ou + échantillons indépendants – Nominal

I

Même logique que à un échantillon

I

Le nombre de degrés de liberté est

RC−(R+C −

1

) I RC est bien le nbr de catégories comme à 1 éch.

I La réduction vient de ce qu’il faut calculerR+C−1 quantités I pour calculer les fréquences espérées

I

Limitations

I Il faut que lesOij ≥5

I ≥10 lorsqu’il y a un seul degré de liberté I Sinon, la stat du test ne converge pas à uneχ2 I Ne peut déterminer la causalité

I Groupe↔résultat

(24)

I

Y-a-t-il indépendance entre la pratique du sport et le choix de logement ?

I Échantillon d’étudiants d’une université USA

Groupe

i

Sport

j P

ligne Aucun Peu Régulier

Résidence U 32 30 28 90

Appart. sur campus 74 64 42 180

Appart. hors campus 110 25 15 150

Chez ses parents 39 6 5 50

P

col 255 125 90 470

(25)

χ

2

2 ou + échantillons indépendants – Nominal : exemple

I

Questions posée dans ce genre d’exercice :

I Le lieu de vie affecte-il la pratique du sport ? I

Mais le test ne peut déterminer si

I les étudiants ont choisi leur logement pour pratiquer le sport I le logement induit la pratique du sport

I Pas de un test de causalité

I Sauf à conclure à l’indépendance (pas de causalité)

I

Intéressant pour chercher un régresseur

I qu’on penserait significatif

I mais pas linéaire

(26)

I

Calcul des fréquences espérées

I p.e.EAucun,Resid=NpAucun.p.Resid =48.82

I pAucun.=OAucun./N=255/470p.Resid =O.Resid/N=90/470

Groupe

i

Aucun Peu Régulier Sport

j P

ligne

Résidence U 48.8 32 23.9 30 17.2 28 90

Appart. sur campus 97.7 74 47.9 64 34.5 42 180

Appart. hors campus 81.4 110 39.9 25 28.7 15 150

Chez ses parents 27.1 39 13.3 6 9.6 5 50

P

col 255 125 90 470

(27)

χ

2

2 ou + échantillons indépendants – Nominal : exemple

I

Il faut que chaque

Eij

5

I c’est le cas

I

La

χ2

est calculée en sommant tous les

(Oij−Eij)2

Eij

I (32−48.8)2

48.8 +. . .=60.5 I Les degrés de liberté sont

RC−(R+C−1) =12−(4+3−1) =6 I χ2.95;6=12.59 =⇒ RH0

I Il n’y a pas de quoi conclure à l’indépendance du logement et sport

(28)

I

Si on ramène la table de contingence en fréquences relatives

I On voit bien qu’il y a un clivage dans/hors campus

Groupe

i

Aucun Peu Régulier Sport

j P

ligne

Résidence U 36% 33% 31% 100%

Appart. sur campus 41% 36% 23% 100%

Appart. hors campus 73% 17% 10% 100%

Chez ses parents 78% 12% 10% 100%

P

col 54% 27% 19% 100%

(29)

χ

2

dans R “Pearson’s Chi-squared Test for Count Data”

chisq.test(x, y = NULL, correct = TRUE, p = rep(1/length(x), length(x)), rescale.p = FALSE, simulate.p.value = FALSE, B = 2000)

x

vecteur ou matrice numérique

y

vecteur numérique ; ignoré si x est une matrice

I

x & y peuvent aussi être des factors

I

Si x est un factor, y devrait être un factor de même longueur

correct

logique, indique s’il faut appliquer une correction de continuité pour 1 table 2 par 2

p

vecteur de proba de même longueur que x

I

permet de spécifier des proba ad hoc

simulate.p.value

logique indicant si calculer les p-valeurs par

simulation

B

entier = nombre de réplications pour la simulation

(30)

M <- as.table(rbind(c(762, 327, 468), c(484, 239, 477)))

I

les données

dimnames(M) <- list(gender = c("F", "M"), party = c("Democrat","Independent", "Republican"))

I

nommer les variables (Xsq <- chisq.test(M))

I

Calcul du test, on met dans Xsq & imprime le résumé Xsq$observed

I

Comptes observés (

M) Xsq$expected

I

Comptes espérés sous

H0

I

Conclusion

I on rejette l’indépendance des “échantillons”

I les femmes votent différemment des hommes

(31)

χ

2

dans R – exercices

I

Refaites les 2 tests précédents dans R

I Dé et sport

I

Un échantillon de 44 hommes et 56 femmes

I A-t-il été tiré d’une population où les hommes et les femmes sont en égales proportions ?

I

Une certaine procédure médicale est associée à une morbidité

± importante

I On voudrait savoir si cette dernière dépendrait d’un score dit Apgar

Morbidité

Apgar Nulle Mineure Majeure

0-4 21 20 16

5-6 135 71 35

7-10 158 62 35

(32)

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(33)

Un échantillon – Nominal : Binomial – Intro

I

Population partagée en 2 classes

I Nombreux exemples

I

Proportion dans une classe est

P I Dans l’autre classe 1−P I Proportion fixe dans une pop.

I mais v.a. dans un éch. à cause de l’échantillonnage

I

Distribution binomiale

I Distribution d’échantillonnage de proportions calculées sur des échantillons d’une population à 2 classes

I

Test

H0 :

la proportion est

P

dans la population

I P est un certain chiffre

I Le test indique s’il est raisonnable de croire que la proportion observée dans l’éch. puisse provenir d’une pop. avec proportion P

(34)

I

Dans un éch. de taille

N I extrait d’une pop à 2 classes

I la proba. d’obtenirx objets d’une classe I et doncN−x de l’autre classe I est

p(x) = N

x

Px(1−P)N−x avec

N x

= N!

x! (N−x)!

I Ce n’est que de la combinatoire, on compte les évènements I

Proba d’obtenir

au plus x

objets d’une classe

=

x

X

i=0

p(i)

(35)

Un échantillon – Nominal : Binomial – méthode

I

p.e. un dé à 6 faces tiré 5 fois, on obtient 2 “6”

I N=5,x =2

I “succès” est le 6 si c’est ça qui nous intéresse I P proportion supposée de 6=16 =H0

I H0 est essentiellement : la face 6 a-t-elle une proba

“régulière” ?

I On ne sait rien sur les autres faces I Proportion observéePˆ= 25 =.4

I Un estimateur “naturel”

(36)

I Pr{deux

6

} I p(2) =

5 2

1 6

2

1−165−2

=.161

I Pr{moins de deux

6

}=p(

0

) +p(

1

) =.

402

+.

402

=.

804

I doncPr{deux6ou plus}=1−.804=.196

I Alternative : I p(3) =

5 3

1 6

3

1−165−3

=.032 I p(4) =

5 4

1 6

4

1−165−4

=.003 I p(5) = 5

5

1 6

5

1−165−5

=.0001

I Pr{deux6ou+}=p(2) +p(3) +p(4) +p(5) =.196 I SousH0:P= 16, on aPr{x ≥2}=.196

I probabilité dite “exacte” car on n’a pas recourt à une approx p.e. normale

I La proba obtenue est≥.05 =⇒ ¬RH0

I deux 6 sur 5 jets de dés n’est pas incompatible avecp=1/6

(37)

Test binomial : Procédure “exacte” – Remarques

I

On n’utilise pas le

pˆ=

2/5

=.4 I

One-sided ou two-sided ?

I Ici, on a regardéx ≥2

I les évènements “plus extrêmes”, donc plus petite proba que pourx≤2

I Donc : One-sided “greater”

I Pour un “two-sided”,x 6=2, doubler la proba I

C’est de plus en plus long à mesure que

N

augmente

I Mais on peut montrer que laPde binomiales →

N→∞normale I Cela amène au test “approximatif” suivant

I En fait, asymptotique - on aura une autre significaiton pour

“approximatif” avec le test de randomisation

(38)

I

Le test du score

I Stat pˆ−p

pp(1−p)/n = .4−.2

p.2(1−.2)/5 '1.118

I SousH0, le score suit asymptotiquement une distribution normale

I Ici, avec 5 obs, on ne peut pas l’employer I On compare avec

I 1.96 en valeur absolue pour le 2-tail I 1.644 pour le 1-tail “greater”

I On est donc loin de R aussi

(39)

Un échantillon – Nominal : Binomial – R

I

binom.test(x, n, p = 0.5, alternative = c("two.sided", "less",

"greater"), conf.level = 0.95)

I x nombre de “1” (succès, vrai...) I n taille de l’échantillon

I p Proba de succès que l’on teste =H0

I alternative indique l’hyp. alternative

I "two.sided", "greater" ou "less" (on n’indique que la 1º lettre) I par défaut two.sided

I conf.level le niveau de confiance choisi pour calculer l’intervalle de confiance

I

Test exact, quel que soit n

(40)

I

En supposant l’hérédité mendélienne

I un croisement de 2 variétés d’une certaine plante produirait 1/4 de “naines” et 3/4 de “géantes”

I Dans une expérience pour déterminer si cette hyp. est raisonable

I on obtient 243 naines et 682 géantes.

I

On teste

H0 :p =

3

/

4, en prenant “géante” comme le succès

I binom.test(682,682+243,p=3/4)

I résultat : p-valeur>5%¬RH0

I

Autre exemple

I Sur un échantillon de 24 pièces manufacturées, 13 passent le test de qualité

I Peut-on dire que la fiabilité est meilleure que 35% ?

(41)

Un échantillon – Ordinal : Kolmogorov-Smirnov

I

KS teste l’égalité de 2 dist. uni-dimensionnelles continues

I À 1 éch. : compare la dist. empirique de celui-ci avec une

distribution connue I spécifiée dans le test

I H0 la dist. empirique est compatible avec la théorique I H1 2 tailed : pas compatible, sans dominance claire I H1 1-tailed : pas compatible, l’une domine l’autre I À 2 éch. : compare les deux dist. empiriques

I

La stat du test est la plus grande distance possible entre les deux distributions

I Cette stat suit une dist. de Kolmogorov sousH0

(42)

En rouge, une dist. théorique, en bleu une empirique

La flèche noire est la stat du test KS

(43)

Un échantillon – Ordinal : Kolmogorov-Smirnov – remarques

I

Comme les dist. sont continues, la proba de 2 points égaux est nulle

I En pratique, ks ne devrait pas s’appliquer à 2 éch. avec bcp de points identiques

I

Pour tester la normalité,

des test spécialisés + puissants

I p.e. Shapiro–Wilk ou Anderson–Darling

I

Si les paramètres de la dist. connue sont estimés

I dans le sens où ils résultent d’une estimation I alors le test n’est pas valable

I

Une généralisation à un cas multivarié existe

I

La fonction ks.test de R implémente le test – prochaine dia

I Mais permet aussi que la distribution théorique soit discrète

(44)

ks.test(x, y, ..., alternative = c("two.sided", "less", "greater"), exact = NULL)

I

Arguments

I x vecteur numérique de données

I y soit un vecteur numérique de données pour le test à 2 échantillons

I ou une chaine de caractère qui nomme une fonction de distribution continue p.e. pnorm

I ... d’éventuels paramètres de la distribution indiquée dans y I alternative – voir test binomial

I exact : NULL ou bien TRUE ou 1 pour indiquer si une p-valeur exacte doit être calculée (pas calculable dans tous les cas)

(45)

Un échantillon – Ordinal : Kolmogorov-Smirnov dans R – détails

I

Si y est numérique, c’est le test à 2 éch.

H0 :

x et y sont tirés de la même distribution

I Sinon, y est une chaine de caractères qui teste si x est généré par la distribution nommée

I avec les paramètres indiqués par ...

I

Des égalités causent un avertissement

I car l’hyp. sous-jacente de distribution continue ne les permet pas

I Les arrondis peuvent générer des erreurs importantes ici.

I

Les NA sont omises silencieusement

(46)

I

x <- rnorm(50)

I Est-ce que x+1.2 vient d’une distribution gamma avec paramètres de forme 3 et taux 2 ?

I ks.test(x+1.2, "pgamma", 3, 2)# deux côtés (two-sided) I ks.test(x+1.2, "pgamma", 3, 2, exact = FALSE)

I ks.test(x+1.2, "pgamma", 3, 2, alternative = "gr")

(47)

Un échantillon – Ordinal : Runs

I

Wald-Wolfowitz “Runs” runs.test

I Installer le package randtests I Skip

(48)

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(49)

2 ou plus échantillons

I

Échantillons

reliés

I Il y a un lien entre les obs des6=éch.

I p.e. pls obs de la même personne : poids, taille, revenu..

I dans le temps : poids en t & t+1 pour des personnes I n juges classent k vins. Un vin est-il classé systématiquement

plus haut ou plus bas que les autres ?

I

Échantillons

indépendants

I Pas de lien dans le processus d’échantillonnage I On veut alors souvent comparer les distributions

I Et tester l’indépendance

(50)

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(51)

2 échantillons reliés – Nominal : McNemar

I

Test de significativité des changements

I mcnemar.test

I

Skip

(52)

I

Teste pour une différence systématique entre paires d’obs.

(x,y)

I p.e. le poids de sujets avant & après traitement

I

Le test est plus utile si les comparaisons ne peuvent être exprimées que par

x >y,x=y,x <y

I Si(x,y)peuvent être exprimés cardinalement I p.e.x =17,y =12→t-test

I Mais on peut utiliser le test du signe pour vérifier si la médianedex−y est6=0

I Si(x,y)ne peuvent être exprimés que ordinalement I p.e. x est 1º rang de tous les x, y est 7º→test des rangs

signés de Wilcoxon (prochain test)

(53)

2 échantillons reliés – Ordinal : Signe – Principe

I

S’il n’y a pas de

6=

entre

x

&

y

,

p = Pr{x >y}=.

5

I Pr{x=y}=0 pour des variables continues

I les paires t.q.x =y sont omises du test I DoncH0:p=.5

I

Soit

W

le nombre de paires positives

I “paire positive” peut-êtrex >y qualitatif, oux−y quanti I SousH0,W suit une distribution binomiale

I Il faut supposer l’indépendance entre paires

I

On utilise donc binom.test comme dans le test binomial avec

p =.5

(54)

I

Longueur des pattes antérieures et postérieures G de cerfs i Avt Arr.

6=

1 142 138 +

2 140 136 +

3 144 147 −

4 144 139 +

5 142 143 −

6 146 141 +

7 149 143 +

8 150 145 +

9 142 136 +

10 148 146 +

I H0

: pas de

6=

de longueur

I two-tailed, pas d’à priori I Si on disaitH0 Avt>Arr. :

one-tailed

I

Écrivez le test dans R

I p-value = .109 > .05 I ¬RH0

I À retenir : 8/10 pas signif6=5/10 I Comparer si c’était 80/100

(55)

2 échantillons reliés – Ordinal : Signe – Exemple 2

I

Un fabriquant a 2 produits, A & B

I Il veut savoir si les consommateurs préfèrent B à A I

Éch de 10 consommateurs

I Chacun reçoit A & B et indique ce qu’il préfère I H0

B n’est pas préféré à A

I H1B est préféré à A

I =⇒ C’est un test à un côté

I

Sur l’éch. 8 consommateurs préfèrent B, un préfère A et un est indifférent

I Tester

I binom.test(8, 9, p = 0.5, alternative = c("greater")) I p-valeur=.0195RH0

(56)

I

Survie en semaines pour 10 sujets :

I 49, 58, 75, 110, 112, 132, 151, 276, 281, 362+

I 362+ veut dire >362

I

La médiane est-elle supérieure à 200 ?

I Dans cet éch., la médiane est toute valeur entre 112 & 132 I SiH0 est vraie, médiane =200,

I alors on doit s’attendre à la moitié des sujets en vie après 200 semaines

I on assigne + aux obs >200 et - aux <

I Donc 7 - et 3 +

I vsH1 Médiane6=200 : 2-tailed I Tester – p-val=.34 :¬RH0

I vsH1 Médiane > 200 : 1-tailed I Tester – p-val=. ? ? : ? ?

(57)

2 échantillons reliés – Ordinal : Wilcoxon

I

Test des rangs signés (“Wilcoxon signed-ranks test”)

I H0:la dist. des paires est symmétrique autour de zéro

I lorsqu’on ne peut pas supposer la normalité I Si on peut supp. la norm. : test t

I

Hyp

I Les données sont en paires et viennent de la même pop.

I Chaque paire est choisie au hasard, indépendamment I

Soit

N

le nombre de paires

I éventuellement en omettant les paires égales I Calculer|x2i−x1i|etsigne(x2i−x1i) =si I Assigner un rangRi aux|x2i−x1i|

I Le rang 1 va à la plus petite I Stat du test :W =P

isiRi la somme de rangs signés I Si|W|est grande, un groupe domine l’autre I RH0 si|W|>Wcritical,N

(58)

wilcox.test(x, y, alternative = c("t"), mu = 0, paired = 0/1, exact

= NULL, ...)

I

Arguments

I x : vecteur de données numériques, NA omises

I y : vecteur optionnel de données numériques, comme x I alternative : comme binomial

I mu : un nombre optionnel – ‘Détails’

I Permet de tester si les6=sont sym. autour de mu, au lieu de zéro

I paired : 0/1 indique si les obs. sont en paires (2 éch.) – Détails I exact : 0/1 indique une p-valeur exacte doit être calculée

(59)

2 échantillons reliés – Ordinal : Wilcoxon

I

Détails “paired”

I Si seul x est donné, ou x & y, mais paired=1, I un test de Wilcoxon rangs signés est calculé

I H0 : la distribution de x (1 éch.) ou de x-y (2 éch. paired) est symmétrique autour de mu

I Si x et y sont donnés, mais paired=0,

I un test équivalent au test de Mann-Whitney est calculé I H0 : les distributions de x et de y diffère de mu (localisition)

et l’alternative est qu’ils diffèrent par une autre valeur I Avec moins de 50 obs : la dist. exacte du test est calculée

I sinon approx normale

(60)

I

Mesures d’importance de dépression sur 9 patients

I Avant & après traitements

I Ordinal car on ne peut comparer entre patients I Donc : pas normalité, pas de t-test

I On se demande si le traitement a un effet I H0:dist. sym autour de zéro

I Alternative : dist sym autour de mu>0 “greater” – comme avec binomial

I =⇒ One-tailed test

avt <- c(1.83, 0.50, 1.62, 2.48, 1.68, 1.88, 1.55, 3.06, 1.30) apr <- c(0.878, 0.647, 0.598, 2.05, 1.06, 1.29, 1.06, 3.14, 1.29) wilcox.test(avt, apr, paired = TRUE, alternative = "greater")

I

Quelle conclusion ?

(61)

Sommaire

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(62)

I

Test de Fisher

I Skip I

Test du

χ2

I Voir la sectionχ2

(63)

2 échantillons indépendants – Ordinal

I

Test de la Médiane

I Skip

I

Test “Mann-Whitney U”

I Même test que Wilcoxon à 2 éch.

I Rwilcox.test( )

(64)

I

Voir Kolmogorov-Smirnov 1 échantillon

I

ks.test(x, y, ..., alternative = c("two.sided", "less", "greater"), exact = NULL)

I x & y vecteurs numériques de données I

Exemple

I x <- rnorm(50) I y <- runif(30)

I H0x et y viennent de la même distribution I ks.test(x, y)

I H0x est (stochastiquement) plus grand que x2 I x2 <- rnorm(50, -1)

I plot(ecdf(x), xlim = range(c(x, x2)))

I plot(ecdf(x2), add = TRUE, lty = "dashed") I ks.test(x, x2, alternative = "l")

I Comparer avec

I t.test(x, x2, alternative = "g") I wilcox.test(x, x2, alternative = "g")

(65)

Sommaire

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(66)

I

Je laisse tomber les éch. reliés

I

Éch. indép.

I Nominal

I Voir sectionχ2

I Ordinal : Extension du test de la médiane I Skip

(67)

k échantillons indépendants – Ordinal : Kruskal-Wallis

I

Teste si des éch. proviennent de la même dist.

I Assez bien une extension de Wilcoxon I

La significativité (

RH0

)

I indique qu’au moins un éch. domine stochastiquement au moins un autre éch.

I mais n’identifie pas où cette dominance pourrait se placer I D’autres tests pourraient aider

I Si on peut faire l’hyp. d’une même distribution pour tous les groupes à l’exception de la médiane

I En rappelant que la moyenne & la variance ne sont pas définies

I alorsH0: toutes les médianes sont égales

I H1 : au moins une médiane est6=de celle d’une autre groupe I Plus généralement, K-W teste l’égalité des paramètres de

localisation (=position) entre les groupes I Moyenne (si définie), médiane et mode

(68)

I

Classer toutes les

N

obs. des k éch. ensemble

I Sans tenir compte de l’appartenance de groupes - donc de 1 à N

I

La stat de test est

H = (N−

1)

Pg

i=1ni(¯ri.−¯r)2 Pg

i=1

Pni

j=1(rij −r)¯2 ni

est le nombre d’obs. du groupe

i

rij

est le classement de l’obs.

j

du groupe

i

¯ ri.=

Pni

j=1rij

ni

est le classement moyen des obs. du groupe

i

¯

r = 12(N+

1) est la moyenne des

rij

(69)

k éch. indép. – Ordinal : Kruskal-Wallis – méthode

I

Je ne discute pas les gestions des égalités

I mais s’il n’y a pas d’égalité, alors

H= 12 N(N+1)

g

X

i=1

nii.2−3(N+1)

qui donc ne comprend que des moyennes de rangs (par groupe) I

On voit que si les groupes sont “mélangés”

I donc les rangs dans un groupe sont répartis dans tout l’éch.

I alorsHsera relativement petit

I plus petit que si un groupe concentre des rangs élevés I Cela, à cause du carré

I

Sous

H0

,

H ∼χ2g−1

I Donc siH< χ2g−1;0.95alors aucun ne domine un autre stochastiquement

I Si c’est le cas contraire, il faut chercher entre paires de groupes

(70)

I H

ne suit pas exactement une

χ2g−1

I La différence devient importante lorsque certains groupes ont moins de 5 membres

I Il est possible de trouver une dist. exacte pourH

I

Le test des rangs signés de Wilcoxon est essentiellement un cas particulier de celui-ci

I

Kruskal-Walis est parfois appelé “ANOVA 1-way for ranks”

I ANOVA = ANalysis Of VAriance

I KW n’est pas du tout un test sur les variances I Mais la structure en tableau évoque ANOVA I ANOVA teste les moyennes

I KW la dominance stoch

I qui devient la médiane en cas de symmétrie

(71)

k éch. indép. – Ordinal : Kruskal-Wallis – R

I

Kruskal-Wallis Rank Sum Test kruskal.test(x, ...)

x vec. numérique des données ou liste de vec. num de données

I Les éventuels éléments non-num. seront forcés (coerced), avec avertissement

g vec ou factor qui indique le groupe pour chaque élément de x

I Ignoré si x est une liste (car les groupes sont alors définis)

formula une formule de type “response ~ group” comme pour les régressions

– voir exercice 3

data matrice ou frame optionnel qui contient les données de la formula

subset perment éventuellement de prendre un sous-ensemble des données

na.action fonction qui indique ce qu’il faut faire des NAs.

(72)

I

Mesure d’efficience d’un certain médicament

I pour retirer des poussières de sujets

I normaux x <- c(2.9, 3.0, 2.5, 2.6, 3.2)

I avec une maladie des voies respiratoires y <- c(3.8, 2.7, 4.0, 2.4)

I avec asbestose z <- c(2.8, 3.4, 3.7, 2.2, 2.0) I kruskal.test(list(x, y, z))

I p-valeur ? Conclusion : pas de dominance stoch

(73)

k éch. indép. – Ordinal : Kruskal-Wallis – Exercice 1

I

24 sujets (N)

I 3 groupes A, B, C de 8, pour une interview

I mais 1 sujet en B et 2 en C ne viennent pas

I nA=8,nB =7,nC=6 I Éch. de6=tailles :

argument pour np ?

I

Doivent classer 3 vins

I En fait : le même vin, mais I l’interview est faite pour

que les A s’attendent à de bons vins, les C de mauvais

A B C

6.4 2.5 1.3

6.8 3.7 4.1

7.2 4.9 4.9

8.3 5.4 5.2

8.4 5.9 5.5

9.1 8.1 8.2

9.4 8.2

9.7

(74)

Niveaux Rangs

A B C A B C

6.4 2.5 1.3 11 2 1

6.8 3.7 4.1 12 2 4

7.2 4.9 4.9 13 5.5 5.5

8.3 5.4 5.2 17 8 7

8.4 5.9 5.5 18 10 9

9.1 8.1 8.2 19 14 15.5

r¯=

9.4 8.2 NA 20 15.5 11

9.7 NA NA 21

P

rij

Somme rangs 131 58 42 231

Moyenne rangs 16.4 8.3 7.0

i.

Entrez les données à la main et réalisez le test

(75)

k éch. indép. – Ordinal : Kruskal-Wallis – Exercice 2 & 3

I

Ex. 2. Données simulées SimKW.csv sur site diplôme

I 3 éch avec la même moyenne (43.5), la même médiane (27.5), I mais un résultat Kruskal-Wallis tranché, avec p-valeur=0.025

I

Ex. 3. Illustration de la version “formule” de la commande

I Airquality : Daily air quality measurements in New York, May

to September 1973.

I Ozone = niv d’ozone I Month = 5,6...9 I Core distribution R

I utiliserdata(airquality)

I boxplot(Ozone ~ Month, data = airquality) I kruskal.test(Ozone ~ Month, data = airquality)

(76)

I

Cochran Q

I Skip

I

Friedman analyse de variance 2 voies

I “ANOVA 2-way for ranks”

I Sur Rfriedman.test I Skip

(77)

Résumé tests np dans R

m0.09|>m0.18|>p0.18|>p0.18|>p0.18|>p0.18||>m0.09|>m0.18|>p0.18|>p0.18|>p0.18|>p0.18|01234567891011

2 échantillons k éch.

1. Installer packagerandtests

(78)

Rappel sur les tests

Tests & corrélation : mesures Tests

Nominal : Test duχ2 Un échantillon

Plusieurs échantillons 2 échantillons reliés 2 échantillons indépendants k échantillons

Procédure de randomisation Corrélation non-paramétrique

(79)

Tests de randomisation

I

Divers noms

I randomisation, permutation, exact I

R package

coin

I Voir vignette coin_implementation.pdf

I

Randomisation/permutation = une

classe

de tests

I Qui ont pour objectif commun de tester des hyp.

d’indépendance

I Beaucoup de tests y sont dispo, dont ceux qu’on a vu I χ2

I Wilcoxon I Kruskal-Walis

(80)

I

Pour un certain test

I np ou autre, sur 2 ou plus éch.

I

La distribution de la stat du test est obtenue

I en calculant la stat du test dans tous les réarrangements possibles des étiquettes des points de donnée

I l’étiquette est un groupe auquel appartient le point de donnée I La ligne d’un tableau de contingence

I H0

: les étiquettes sont interchangeables

I Équivalent à “même distribution entre 2 groupes de données”

I Un rejet deH0conduit à l’indépendance des 2 éch.

(81)

Exemple. Randomisation sur des moyennes

I

Soit 2 groupes A & B

I de taillesnA etnB

I avec moyennesx¯A etx¯B

I L’appartenance à un groupe estl’étiquettede chaque point de donnée

I

On veut tester si les 2 groupes ont la même distribution (

H0

)

I Lastat du test de permutationest la6=entre les moyennes

¯ xA−x¯B

I AppeléeT(obs)

I T(obs)est-elle assez grande pour rejeterH0? I On calculeT(obs)

I Puis onmélangeles obs. des 2 échantillons

(82)

I H0: les 2 groupes ont les mêmes moyennes / étiquettes I SinA et/ounB est très grand, il faudra en calculer moins I

p-valeur one-tailed

I proportion de ces permutations pour lesquelles la6=de moyennes est≥T(obs)

I si <5% :RH0

I

p-valeur two-tailed

I proportion de ces permutations pour lesquelles la valeur absolue de la6=de moyennes est≥ |T(obs)|

I Remarque : ici on ne teste qu’une égalité de moyennes, pas l’indépendance

I parce que la stat de test est une6=de moyenne

I

On peut calculer un Intervalle de Confiance pour

T(obs)

:

I Trier toutes les6=calculées de la + petite à la + grande I La borne inf de l’IC est p.e. la 25º ou 250º valeur, selon nbr

d’obs

(83)

Tests de randomisation – Package coin

I

On ne part pas sur une stat de test à priori

I Ds l’ex., une moyenne

I Mais on peut refaire la stat de test de n’importe quel test I p.e. rangs signés de Wilcoxon ou somme de carrés deχ2 I En général, il s’agit de test d’indépendance sur base d’une

table de contingence

I

Au lieu de faire une hypothèse sur la distribution asymptotique de cette stat

I p.e. le testχ2 approche la dist. de la stat de test par celle de laχ2

I le test calcule la stat de test sur base de permutations de l’éch.

I Si on peut faire toutes les permutations : “exact”

I Sinon : “approximée” – on en prend “beaucoup”

I par opposition à “asymptotique” qui est le cas classique

(84)

I

En général, les permutations reproduisent les tables de contingence

I Avec chaque table, on calcule la stat de test

I Ça donne une distribution “empirique” de la stat de test I Si la stat de test est dans la queue de la distribution, onRH0

I

C’est la commande qui “choisit” le test par défaut

I Donc, il faudrait connaitre + de tests np pour comprendre ce test

I En particulier, évaluer si le choix est approprié I Mais quelques exemples pour comprendre la base

(85)

Tests de randomisation – Package coin

I

Charger le package coin

I La commande principale estIndependenceTest( ) I

En premier on met une formule

I Comme dans le dernier exemple de Kruskal-Walis I independence_test(Ozone ~ Month, data = airquality) I Les résultats sont bien différents !

I Mais on peut introduire des groupes (blocks) I y ~ x | block

I p.e. y = satisfaction de son emploi, x = groupes de revenus, block = ho & fe

I

C’est la commande qui “choisit” le test

I Par défaut – on verra + loin une façon de changer

I

On peut choisir un test “exact”, “approximate”, “asymptotic”

I

+ des options diverses

(86)

I

Données asat de toxicologie

I mesures avec traitement "compound" et sans (témoin) I boxplot(asat ~ group, data = asat)

I independence_test(asat ~ group, data = asat) I

Que concluez-vous ?

(87)

Tests de randomisation – Package coin : exemple

I

Données “job satisfaction”

I en 4 cat.

I selon 4 niveaux de revenu I pour les hommes et les femmes

I data("jobsatisfaction", package = "coin") I

Attention, les données sont en “Table”

I pas en Frame

I Une Table dans R est une table de contingence I présente le comptes (fréq. abs.) dans chque cellule /

combinaison de factor

I On l’utilise directement dans le test

(88)

I

Visualisation

I ftable “flat contingency tables”

I ftable(js)

I Tableau de contingence à pls dim I Installer & charger le packagevcd

I Mosaic plot pour des donnés cat pluridim

I mosaic(Income ~ Gender + Job.Satisfaction, data = js, split_vertical=c(TRUE, FALSE, TRUE))

I Peut-être pas le + joli – je vous laisse expérimenter

(89)

Tests de randomisation – Package coin : exemple

I

independence_test(js)

I Le test décide seul

I Il emploit une stat de Max : peu d’info, peu de puissance

I

independence_test(js, teststat = "quadratic", distribution = asymptotic())

I On impose un test classique

I Ici Cochran-Mantel-Haenszel – mais c’est là qu’il faut connaitre bcp de tests

I p-valeurw.33 :H0 pas rejetée

I H0 était “pas de différence entre les éch. / groupes” : donc même distribution

(90)

I

independence_test(js, distribution = approximate(B = 10000), scores = list(Job.Satisfaction = 1 :4, Income = 1 :4))

I scores, ici, force Job.Satisfaction et Income, de factor qu’ils étaient à “facteur ordonné”

I Donc : exploite le fait que la satisfaction et le revenu sont des ordres (ordinal, pas nominal)

I Le test a donc un peu plus d’info I p-valeurw.01 :H0 rejetée

I Donc : indépendance – les groupes ne viennent pas tous de la même dist.

I Donc, une différence significative entre hommes et femmes I Réaliser qu’on teste avec 2 ordinales et une nominale

(91)

Conclusion

I

Ceci conclut les tests np

I

On en a vu un échantillon

I Plutôt à titre didactique que pour être exhaustif I

On a vu qu’on pouvait tester dans des situations

I où on ne pourrait utiliser des régressions I cfr dernier exemple

I mais où la puissance est sans doute faible I p.e. les différents résultats des tests

(92)

Rappel sur les tests Tests

Corrélation non-paramétrique

(93)

Corrélation non-paramétrique

Équivalent du coef de corrélation pour données “quali.”

+ précisément : “coef de corrélation de Pearson” r ou R – paramétrique

Mesure Corrélation

Nomin. Coefficient de contingence,

φ

,...

Ordin. Coef. de corrélation de rangs de Spearman

rs

Coef. de corrélation de rangs de Kendall

τ

Il y en a quelques autres

(94)

I

Plusieurs mesures ont été définies

I pour des données nominales I à partir des tables de contingence

I pour essayer de décrire la force de l’association entre variables I principalement à partir des valeurs de la stat du testχ2 I

Il est vrai qu’il est souvent utile de décrire la relation

I mais je crois que la table de contingence y arrive mieux I qu’un coefficient résumé

(95)

Ordinal : Corrélation de rang de Spearman ρ

I

Parfois noté

ρ

, parfois

rs I

Les obs. sont en paires

hx,yi

I La formule est simplement celle de la corrélation I appliquée au rangs

ρ= cov(rx,ry) pvar(x)var(y)

I Si les rangs dex sont proches de ceux dey I ρ→1

I S’ils sont complètement à l’opposé :ρ→ −1

cov(x, y = NULL, use = "everything", method = c("pearson",

"kendall", "spearman"))

(96)

I

Dans les 2 éch. appareillés

I une paire de paireshxi,yiiethxj,yjiest dite concordante si I soitxi >xj etyi>yj

I soitxi <xj etyi<yj

I sinon elle est discordante

I Une double égalité sort du calcul duτ

I

Soit

nc

et

nd

les nombres de paires concordantes et discordantes, respect.,

τ = nc−nd

n(n−

1

)/

2 est le

τ

de Kendall

I

Le dénominateur est le total de combinaisons de paires

I s’il y a parfaite concordance,τ=1

I s’il y a parfaite disconcordance,τ=−1 I s’il y a indépendance,τ =0

(97)

Corrélation de Kendall τ : exemple

I

Données "survey" préchargées dans R

I 237 variables

I smoke <- factor(survey$Smoke,

levels=c("Never","Occas","Regul","Heavy"))

I exer <- factor(survey$Exer, levels=c("None","Some","Freq")) I m <- cbind(exer, smoke)

I on refait une petite matrice

I

cor(m, method="kendall", use="pairwise")

I On utilise pairwise sinon les NA causent un résultat NA I La corrélation est donc le chiffre hors de la diag princ.

(98)

1.

Données simulées SimKW.csv sur site diplôme

I 3 éch avec la même moyenne (43.5), la même médiane (27.5) I Montrez que ces 3 éch. sont indép. avec Kruskal-Wallis

I Résultat tranché, avec p-valeur=0.025

2.

Kurskal-Walis version “formule”

I Airquality : Daily air quality measurements in New-York, May to Sept. 1973. Ozone = niv d’ozone ; Month = 5,6...9 I Utilisezdata(airquality) ; boxplot(Ozone ~ Month, data =

airquality) ; kruskal.test(Ozone ~ Month, data = airquality) I Interprétez

(99)

151, 276, 281, 362+

I 362+ veut dire >362

I La médiane est-elle supérieure à 200 ? Dans cet éch., la médiane est toute valeur entre 112 & 132

4.

Une certaine procédure médicale est associée à une morbidité

± importante. On voudrait savoir si cette dernière dépend d’un score dit Apgar.

Morbidité

Apgar Nulle Mineure Majeure

0-4 21 20 16

5-6 135 71 35

7-10 158 62 35

5.

Répliquez chacun de ces tests en utilisant coin ; essayez de

spécifier des options pour améliorer la puissance.

Références

Documents relatifs

Déterminer les coordonnées du point H, projeté orthogonal du point A sur la droite (

L’enjeu n’est pas la valeur du paramètre, mais le fait que la loi soit une loi de Poisson : « loi des événements rares et indépendants », cela signifie que le taux

I Donc, la fonction boot( ) prend i comme index du bootstrap. I Dans chaque réplication bootstrap, un

I firme unique (help : unique renvoie un vecteur ou data frame comme son arg x mais en enlevant les lignes doublons, dans ce cas définies sur firm). I sample_firm

Test d’hypothèses Qualité de l’ajustement Modèles à données de panel Modèles

Modèles semiparamétriques Extensions du modèle linéaire Modèles à index unique LOESS.. Économétrie non-paramétrique 2017-18 Estimation de fonction de densité

On va utiliser le même fichier W:\Psy3\TD EXCEL\Enfants-PRN.xls et réaliser un test de la médiane pour comparer les IDM à 24 mois des groupes PRN expérimental et PRN

Ce test ne fait pas l'objet d'un menu spécifique dans R Commander, mais le test des rangs de Friedman, avec application de la correction pour ex aequo,