Guide complet : Comment interpréter les résultats de l’ANOVA dans R
Une ANOVA unidirectionnelle est utilisée pour déterminer s’il existe ou non une différence statistiquement significative entre les moyennes de trois groupes indépendants ou plus.
Ce didacticiel fournit un guide complet sur la façon d’interpréter les résultats d’une ANOVA unidirectionnelle dans R.
Étape 1 : Créer les données
Supposons que nous souhaitions déterminer si trois programmes d’entraînement différents entraînent une perte de poids moyenne différente chez les individus.
Pour tester cela, nous recrutons 90 personnes pour participer à une expérience dans laquelle nous assignons au hasard 30 personnes à suivre soit le programme A, soit le programme B, soit le programme C pendant un mois.
Le code suivant crée le bloc de données avec lequel nous allons travailler :
#make this example reproducible
set.seed(0)
#create data frame
data <- data.frame(program = rep(c('A', 'B', 'C'), each = 30),
weight_loss = c(runif(30, 0, 3),
runif(30, 0, 5),
runif(30, 1, 7)))
#view first six rows of data frame
head(data)
program weight_loss
1 A 2.6900916
2 A 0.7965260
3 A 1.1163717
4 A 1.7185601
5 A 2.7246234
6 A 0.6050458
Étape 2 : Effectuer l’ANOVA
Ensuite, nous utiliserons la commande aov() pour effectuer une ANOVA unidirectionnelle :
#fit one-way ANOVA model
model <- aov(weight_loss ~ program, data = data)
Étape 3 : Interpréter les résultats de l’ANOVA
Ensuite, nous utiliserons la commande summary() pour afficher les résultats de l’ANOVA unidirectionnelle :
#view summary of one-way ANOVA model
summary(model)
Df Sum Sq Mean Sq F value Pr(>F)
program 2 98.93 49.46 30.83 7.55e-11 ***
Residuals 87 139.57 1.60
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Voici comment interpréter chaque valeur du résultat :
Programme Df : Les degrés de liberté du programme variable. Ceci est calculé comme #groups -1. Dans ce cas, il y avait 3 programmes d’entraînement différents, donc cette valeur est : 3-1 = 2 .
Df Résidus : Les degrés de liberté pour les résidus. Ceci est calculé comme #total d’observations – # groupes. Dans ce cas, il y avait 90 observations et 3 groupes, donc cette valeur est : 90 -3 = 87 .
Programme Sum Sq : La somme des carrés associée au programme variable. Cette valeur est 98,93 .
Somme des résidus carrés : somme des carrés associée aux résidus ou « erreurs ». Cette valeur est 139,57 .
Carré moyen. Programme : La somme moyenne des carrés associée au programme. Ceci est calculé comme la somme carrée. programme / programme Df. Dans ce cas, cela est calculé comme suit : 98,93 / 2 = 49,46 .
Carré moyen. Résidus : somme moyenne des carrés associée aux résidus. Ceci est calculé comme la somme carrée. résidus / résidus Df. Dans ce cas, cela est calculé comme suit : 139,57 / 87 = 1,60 .
Valeur F : la statistique F globale du modèle ANOVA. Ceci est calculé comme le carré moyen. programme / Carré moyen. Résidus. Dans ce cas, il est calculé comme suit : 49,46 / 1,60 = 30,83 .
Pr(>F) : La valeur p associée à la statistique F avec le numérateur df = 2 et le dénominateur df = 87. Dans ce cas, la valeur p est 7,552e-11 , ce qui est un nombre extrêmement petit.
La valeur la plus importante de l’ensemble des résultats est la valeur p, car elle nous indique s’il existe une différence significative dans les valeurs moyennes entre les trois groupes.
Rappelons qu’une ANOVA unidirectionnelle utilise les hypothèses nulles et alternatives suivantes :
- H 0 (hypothèse nulle) : toutes les moyennes des groupes sont égales.
- H A (hypothèse alternative) : Au moins une moyenne de groupe est différente des autres.
Étant donné que la valeur p dans notre tableau ANOVA (.7552e-11) est inférieure à 0,05, nous disposons de preuves suffisantes pour rejeter l’hypothèse nulle.
Cela signifie que nous disposons de suffisamment de preuves pour affirmer que la perte de poids moyenne subie par les individus n’est pas égale entre les trois programmes d’entraînement.
Étape 4 : Effectuer des tests post-hoc (si nécessaire)
Si la valeur p dans la sortie ANOVA est inférieure à 0,05, nous rejetons l’hypothèse nulle. Cela nous indique que la valeur moyenne entre chaque groupe n’est pas égale. Cependant, cela ne nous dit pas quels groupes diffèrent les uns des autres.
Pour le savoir, nous devons effectuer un test post hoc . En R, nous pouvons utiliser la fonction TukeyHSD() pour ce faire :
#perform Tukey post-hoc test
TukeyHSD(model)
$program
diff lwr upr p adj
B-A 0.9777414 0.1979466 1.757536 0.0100545
C-A 2.5454024 1.7656076 3.325197 0.0000000
C-B 1.5676610 0.7878662 2.347456 0.0000199
Voici comment interpréter les résultats :
- La valeur p ajustée pour la différence moyenne entre les groupes A et B est de 0,0100545 .
- La valeur p ajustée pour la différence moyenne entre les groupes A et C est de 0,0000000 .
- La valeur p ajustée pour la différence moyenne entre les groupes B et C est de 0,0000199 .
Puisque chacune des valeurs p ajustées est inférieure à 0,05, nous pouvons conclure qu’il existe une différence significative dans la perte de poids moyenne entre chaque groupe.
Ressources additionnelles
Introduction à l’ANOVA unidirectionnelle
Comment vérifier les hypothèses de l’ANOVA
Comment effectuer manuellement une ANOVA unidirectionnelle
Calculateur ANOVA unidirectionnel