Le test de student non-appari? permet de comparer deux groupes d??chantillons qui n?ont aucun lien (donc ind?pendants).
Un format simplifi? de la fonction R ? utiliser est :
t.test(x, y)
x et y correspondent, respectivement, aux deux s?ries de valeurs ? comparer. Ce sont des vecteurs de type num?ric.
Pour illustrer l?utilisation du test de student non-appari?, on s?int?resse ? savoir si le poids moyen des femmes est diff?rents de celui des hommes. Pour cela, ? titre d?exemple, on a pes? 10 femmes et 10 hommes pris au hasard dans la population. Leurs poids en kilogramme (kg) est montr? dans le tableau ci-dessous. Le nombre d?individus consid?r?s ici est bien ?videmment faible. C?est juste pour illustrer le test de student.
Group | Poids (kg) | |
---|---|---|
1 | Femme | 42.10 |
2 | Femme | 53.80 |
3 | Femme | 30.00 |
4 | Femme | 45.80 |
5 | Femme | 57.70 |
6 | Femme | 59.20 |
7 | Femme | 82.40 |
8 | Femme | 66.20 |
9 | Femme | 66.90 |
10 | Femme | 51.20 |
11 | Homme | 80.70 |
12 | Homme | 85.10 |
13 | Homme | 88.60 |
14 | Homme | 81.70 |
15 | Homme | 69.80 |
16 | Homme | 79.50 |
17 | Homme | 107.20 |
18 | Homme | 69.30 |
19 | Homme | 80.90 |
20 | Homme | 63.00 |
Question : Le poids moyen des femmes est-il significativement diff?rent de celui des hommes?
Pour r?pondre ? cette question un test de Student non-appari? (ou ind?pendant) peut ?tre utilis?.
A partir de la table de donn?es ci-dessus vous avez deux m?thodes pour faire le test de student en fonction de la structure des donn?es.
1) M?thode 1 - Les donn?es sont stock?es dans deux vecteurs diff?rents (x et y) :
# poids des femmes
x<- round(rnorm(10, mean=57, sd=15), 1)
x
[1] 53.9 24.0 55.9 27.8 37.5 56.8 47.0 31.7 76.2 49.1
# Poids des hommes
y <- round(rnorm(10, mean=75, sd=15), 1)
y
[1] 49.6 56.1 63.4 91.5 85.7 79.7 94.0 79.2 53.5 64.3
Dans ce cas le test de student peut ?tre effectu? avec le code R suivant :
res<-t.test(x,y)
res
Welch Two Sample t-test
data: x and y
t = -3.564, df = 17.99, p-value = 0.00222
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-40.87 -10.55
sample estimates:
mean of x mean of y
45.99 71.70
2) M?thode 2 - Les donn?es sont stock?es dans une table de type data.frame:
d<-as.data.frame(list(
group=c(rep("Femme", 10), rep("Homme", 10)),
poids=c(x, y)
))
head(d)
group poids
1 Femme 53.9
2 Femme 24.0
3 Femme 55.9
4 Femme 27.8
5 Femme 37.5
6 Femme 56.8
Dans cette configuration, le test de student peut ?tre effectu? en utilisant le code R suivant:
#res<-t.test(d$poids ~ d$group)
res<-t.test(poids ~ group, data=d)
res
Welch Two Sample t-test
data: poids by group
t = -3.564, df = 17.99, p-value = 0.00222
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-40.87 -10.55
sample estimates:
mean in group Femme mean in group Homme
45.99 71.70
Comme vous pouvez le constater, les deux m?thodes donnent les m?mes r?sultats.
La p-value du test est de 0.0022. Ce qui est largement inf?rieur ? 0.05. On conclut que le poids moyen des femmes est significativement diff?rent de celui des hommes avec une p-value = 0.0022.
Pour rappel, le test de student n?est applicable que lorsque les deux groupes d??chantillons suivent des lois normales de variances ?gales.
Par d?faut, la fonction t.test() de R suppose que les variances des deux groupes d??chantillons sont in?gales et elle applique la correction de Welch. Le test t de Welch est une adaptation du test de student qui permet de comparer deux groupes d??chantillons de variances diff?rentes.
Vous pouvez utiliser l?argument var.equal=TRUE pour indiquer l??galit? des variances des deux groupes d??chantillons. Cependant c?est ? vous de v?rifier cette hypoth?se avant de l?utiliser.
Nous allons donc utiliser le test F de comparaison de variances pour ?valuer l??galit? des variances des 2 groupes d??chantillons.
Le code R suivant peut ?tre utilis?:
var.test(x,y)
F test to compare two variances
data: x and y
F = 0.958, num df = 9, denom df = 9, p-value = 0.95
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.2379 3.8568
sample estimates:
ratio of variances
0.958
La p-value du test F de comparaison de variance est de p-value = 0.95. Elle est largement sup?rieure ? 0.05. Il n?y a donc aucune diff?rence significative entre les variances des deux groupes d??chantillons. Par cons?quent nous pouvons utiliser le t-test classique qui suppose l??galit? des variances.
Le code R suivant peut ?tre utilis? :
res<-t.test(x, y, var.equal=TRUE)
res
Two Sample t-test
data: x and y
t = -3.564, df = 18, p-value = 0.002219
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-40.87 -10.55
sample estimates:
mean of x mean of y
45.99 71.70
Notez que la formule du test t de Welch est d?crite ici et celle du test de Student l?
Comme indiquer ici, on peut facilement acc?der aux valeurs retourn?es par la fonction t.test():
# Affichage de la p-value
res$p.value
[1] 0.002219
# Affichage de la moyenne
res$estimate
mean of x mean of y
45.99 71.70
# Affichage de l'intervalle de confiance
res$conf.int
[1] -40.87 -10.55
attr(,"conf.level")
[1] 0.95
Cette analyse a ?t? faite avec R (ver. 3.1.0).