Pour comparer l’efficacité de deux marques d’essence, on fait rouler plusieurs voitures semblables dans des conditions de circulation identiques avec un litre d’essence. 13 voitures réalisent le test avec l’essence n°1 et 9 autres avec l’essence n°2. Les kilomètrages réalisés sont les suivants :
On suppose que ces deux variables sont indépendantes et suivent chacunes une distribution normale.
En lisant cet énoncé, nous pouvons déjà récupérer les informations et les données utiles à notre inférence statistique.
Informations
Population : Essence
Variables :
Essence 1 qui suit une distribution normale (s.1)
Essence 2 qui suit une distribution normale (s.2).
Type : Variables indépendantes
Données :
s1 <- c(16, 18, 15, 23, 17, 14, 19, 21, 16, 18, 20, 15, 22)
s2 <- c(13, 15, 11, 17, 12, 13, 14, 11, 13)
Nous concevons des objets qui stockerons les données collectées auprès de nos échantillons. s.1 pour sample 1 et s.2 pour sample 2
Un test d’homogénéité des variances doit être effectué, si les variables comparées :
Suivent toutes une distribution normale.
Sont indépendantes entre elles.
Sont issues d’échantillons inférieurs à 30 individus.
Cela permet d’assurer la validité de notre test.
Données
a <- 0.10
Nous rajoutons le seuil alpha 0.10 à notre environnement de données, en assignant 0.10 à l’objet a.
Hypothèses
Sous forme mathématique :
Nous formulons les hypothèses sous forme mathématique afin de savoir laquelle sera en hypothèse nulle (H0). L’hypothèse nulle est toujours celle qui implique une égalité. Exemple : ‘==’ qui signifie égal, ou ‘>=’ qui signifie supérieur ou égal, ou ‘<=’ qui signifie inférieur ou égal.
Sous forme littéraire :
H0 <- 'les variances sont homogènes'
H1 <- 'les variances ne sont pas homogènes'
Test de l’homogénéité des variances avec le F-test
result <- var.test(s1, s2, conf.level = (1 - a))
p.value <- result[['p.value']]
Le F-test se produit grâce à la fonction var.test(). Cette fonction prend comme argument les deux échantillons (s.1 et s.2) et un indice de confiance (1 - a, soit 1 - 0.10 = 90 % de fiabilité envers notre résultat.)
Resultats
print(result)
##
## F test to compare two variances
##
## data: s1 and s2
## F = 2.2105, num df = 12, denom df = 8, p-value = 0.2665
## alternative hypothesis: true ratio of variances is not equal to 1
## 90 percent confidence interval:
## 0.6731326 6.2968282
## sample estimates:
## ratio of variances
## 2.210526
if(p.value < a){
answer <- paste('Il y a rejet de H0 en faveur de H1, car', p.value, 'est inférieur à', a, '. Donc,', H1)
} else {
answer <- paste('Il y a non rejet de H0, car', p.value, 'est supérieur à', a, '. Donc,', H0)
}
Avec la fonction if(), nous pouvons dire à R d’afficher l’une des deux hypothèses précédemment citées, selon si oui ou non notre p-value est inférieure au seuil alpha.
Réponse : Il y a non rejet de H0, car 0.26651800994774 est supérieur à 0.1 . Donc, les variances sont homogènes
Données
a <- 0.05
Nous modifions notre seuil alpha en y assignant la valeur 0.05
Hypothèses
Sous forme mathématique :
Sous forme littéraire :
H0 <- "on ne peut pas conclure que l'essence 1 est, en moyenne, plus efficace que l'essence 2."
H1 <- "on peut conclure que l'essence 1 est, en moyenne, plus efficace que l'essence 2."
Test de comparaison de deux moyennes avec le T-test
result <- t.test(s1, s2, alternative = 'greater', conf.level = (1 - a), paired = FALSE)
p.value <- result[['p.value']]
Le T-test se produit grâce à la fonction t.test(). Cette fonction prend comme arguments les deux échantillons (s.1 et s.2), le sens de l’hypothèse alternative (alternative = ‘less’ ou ‘greater’ ou ‘two.sided’), un indice de confiance (conf.level = (1 - a), soit 1 - 0.05 = 95 % de fiabilité envers notre résultat.) et le type de variables que nous testons ( paired = FALSE pour une comparaison de deux variables indépendantes.).
Resultats
print(result)
##
## Welch Two Sample t-test
##
## data: s1 and s2
## t = 4.6879, df = 19.998, p-value = 7.068e-05
## alternative hypothesis: true difference in means is greater than 0
## 95 percent confidence interval:
## 3.019996 Inf
## sample estimates:
## mean of x mean of y
## 18.00000 13.22222
if(p.value < a){
answer <- paste('Il y a rejet de H0 en faveur de H1, car', p.value, 'est inférieur à', a, '. Donc,', H1)
} else {
answer <- paste('Il y a non rejet de H0, car', p.value, 'est supérieur à', a, '. Donc,', H0)
}
Réponse : Il y a rejet de H0 en faveur de H1, car 7.06783247255813e-05 est inférieur à 0.05 . Donc, on peut conclure que l’essence 1 est, en moyenne, plus efficace que l’essence 2.
Pour éviter un biais dans les résultats obtenus, l’expérimentateur teste l’essence n°2 avec les mêmes voitures qui ont servit au test de l’essence n°1. Les kilométrages réalisés sont les suivants : 15, 17, 13, 22, 16, 15, 20, 21, 14, 17, 18, 14, 21.
Étant donné la modification de notre seconde variable aléatoire et le passage à un plan d’expérimentation apparié, nous allons refaire le point sur les informations et les données que nous détenons.
Informations
Population : Essence
Variables :
Essence 1 qui suit une distribution normale (s.1).
Essence 2 qui suit une distribution normale (s.2).
Type : Variables appariées.
Données
s1 <- c(16, 18, 15, 23, 17, 14, 19, 21, 16, 18, 20, 15, 22)
s2 <- c(15, 17, 13, 22, 16, 15, 20, 21, 14, 17, 18, 14, 21)
a <- 0.05
Hypothèses
Sous forme mathématique :
H0 : mu.s.1 =< mu.s.2
H1 : mu.s.1 > mu.s.2
Sous forme littéraire
H0 <- "on ne peut pas conclure que l'essence 1 est, en moyenne, plus efficace que l'essence 2."
H1 <- "on peut conclure que l'essence 1 est, en moyenne, plus efficace que l'essence 2."
Test de deux moyennes avec le T-test
result <- t.test(s1, s2, alternative = 'greater', conf.level = (1 - a), paired = TRUE)
p.value <- result[['p.value']]
Nous réutilisons toujours le T-test, tout en veillant à la bonne configuraion de l’argument paired = TRUE. Effectivement, nous utilisons actuellement des variables appariées.
Resultats
print(result)
##
## Paired t-test
##
## data: s1 and s2
## t = 3.0907, df = 12, p-value = 0.004675
## alternative hypothesis: true difference in means is greater than 0
## 95 percent confidence interval:
## 0.3582148 Inf
## sample estimates:
## mean of the differences
## 0.8461538
if(p.value < a){
answer <- paste('Il y a rejet de H0 en faveur de H1, car', p.value, 'est inférieur à', a, '. Donc,', H1)
} else {
answer <- paste('Il y a non rejet de H0, car', p.value, 'est supérieur à', a, '. Donc,', H0)
}
Réponse : Il y a rejet de H0 en faveur de H1, car 0.00467479456901229 est inférieur à 0.05 . Donc, on peut conclure que l’essence 1 est, en moyenne, plus efficace que l’essence 2.