L’ANOVA sur mesures répétées supposent que les variances des différences entre toutes les combinaisons des conditions (ou groupes) sont égales. C’est ce qu’on appelle l’hypothèse de sphéricité.
La sphéricité n’est évaluée que pour les variables à plus de deux niveaux parce que la sphéricité vaut nécessairement pour les conditions à deux niveaux seulement.
La violation de l’hypothèse de sphéricité peut fausser les calculs de variance résultant à un test d’ ANOVA sur mesures répétées plus libéral (c.-à-d. une augmentation du taux d’erreur de type I). Dans ce cas, l’ANOVA sur mesures répétées doit être corrigée de manière appropriée en fonction du degré de violation de la sphéricité. Deux corrections courantes sont utilisées dans la littérature : epsilon de Greenhouse-Geisser (GGe), et epsilon de Huynh-Feldt (HFe).
Le test de sphéricité de Mauchly est utilisé pour évaluer si l’hypothèse de sphéricité est remplie ou non. Ceci est automatiquement rapporté lors de l’utilisation de la fonction R anova_test()
[paquet rstatix]. Bien que ce test ait fait l’objet de vives critiques, et n’arrive souvent pas à détecter les écarts de sphéricité dans les petits échantillons et à les surdétecter dans les grands échantillons, il est néanmoins un test couramment utilisé.
Dans cet article, vous apprendrez à:
- Calculer la sphéricité
- Calculez le test de sphéricité de Mauchly dans R
- Interpréter les résultats de l’analyse de variance sur mesures répétées lorsque l’hypothèse de sphéricité est respectée ou violée
- Extraire le tableau ANOVA automatiquement corrigé pour l’écart par rapport à la sphéricité.
Sommaire:
Livre Apparenté
Pratique des Statistiques dans R II - Comparaison de Groupes: Variables NumériquesPrérequis
Assurez-vous d’avoir installé les paquets R suivants:
tidyverse
pour la manipulation et la visualisation des donnéesggpubr
pour créer facilement des graphiques prêts à la publicationrstatix
offre des fonctions R conviviales pour des analyses statistiques faciles à réaliserdatarium
contient les jeux de données requis pour ce chapitre
Commencez par charger les paquets R suivants:
library(tidyverse)
library(ggpubr)
library(rstatix)
Données de démonstration
Nous utiliserons le jeu de données sur l’estime de soi mesuré sur trois points temporels. Les données sont disponibles dans le package datarium.
data("selfesteem", package = "datarium")
head(selfesteem, 3)
## # A tibble: 3 x 4
## id t1 t2 t3
## <int> <dbl> <dbl> <dbl>
## 1 1 4.01 5.18 7.11
## 2 2 2.56 6.91 6.31
## 3 3 3.24 4.44 9.78
Mesure de la sphéricité
La procédure est la suivante:
- Calculer les différences entre chaque combinaison de groupes associés
- Calculer la variance de chaque différence de groupes
Codes R:
# 1. Calculer les différences des groupes
grp.diff <- selfesteem %>%
transmute(
`t1-t2` = t1 - t2,
`t1-t3` = t1 - t3,
`t2-t3` = t2 - t3
)
head(grp.diff, 3)
## # A tibble: 3 x 3
## `t1-t2` `t1-t3` `t2-t3`
## <dbl> <dbl> <dbl>
## 1 -1.18 -3.10 -1.93
## 2 -4.35 -3.75 0.604
## 3 -1.20 -6.53 -5.33
# 2. Calculer les variances
grp.diff %>% map(var)
## $`t1-t2`
## [1] 1.3
##
## $`t1-t3`
## [1] 1.16
##
## $`t2-t3`
## [1] 3.08
D’après les résultats ci-dessus, la variance de “t2-t3” semble être beaucoup plus grande que les variances de “t1-t2” et “t1-t3”, ce qui suggère que les données violeraient l’hypothèse de la sphéricité.
Pour déterminer s’il existe des différences statistiquement significatives entre les variances des différences, on peut calculer le test de sphéricité de Mauchly.
Calcul de l’ANOVA et du test de Mauchly
Le test de sphéricité de Mauchly est automatiquement rapporté par la fonction anova_test()
[package rstatix], un wrapper autour de car::Anova()
pour faciliter le calcul de l’ANOVA sur mesures répétées.
Arguments clés:
data
: data framedv
: (numérique) le nom de la variable dépendante (ou variable-réponse).wid
: nom de la variable spécifiant l’identificateur de cas/échantillon.within
: facteur ou variable de groupement intra-sujets
Préparation des données : Rassemblez les colonnes “t1”, “t2” et “t3” en format long. Convertir les variables id
et time
en factor (ou variables de regroupement).
selfesteem <- selfesteem %>%
gather(key = "time", value = "score", t1, t2, t3) %>%
convert_as_factor(id, time)
head(selfesteem, 3)
## # A tibble: 3 x 3
## id time score
## <fct> <fct> <dbl>
## 1 1 t1 4.01
## 2 2 t1 2.56
## 3 3 t1 3.24
Exécuter le test ANOVA:
res <- anova_test(data = selfesteem, dv = score, wid = id, within = time)
res
## ANOVA Table (type III tests)
##
## $ANOVA
## Effect DFn DFd F p p<.05 ges
## 1 time 2 18 55.5 2.01e-08 * 0.829
##
## $`Mauchly's Test for Sphericity`
## Effect W p p<.05
## 1 time 0.551 0.092
##
## $`Sphericity Corrections`
## Effect GGe DF[GG] p[GG] p[GG]<.05 HFe DF[HF] p[HF] p[HF]<.05
## 1 time 0.69 1.38, 12.42 2.16e-06 * 0.774 1.55, 13.94 6.03e-07 *
Le résultat est une liste comprenant trois tableaux:
- Résultats de l’ANOVA montrant la p-value et la taille de l’effet dans la colonne
ges
(generalized eta squared) ; La taille de l’effet est essentiellement le degré de variabilité dû au facteur intra-sujets ignorant l’effet des sujets. - Test de Sphéricité de Mauchly. Uniquement pour les variables ou les effets avec des niveaux > 2, car la sphéricité s’applique nécessairement aux variables avec seulement 2 groupes. L’hypothèse nulle est que les variances des différences des groupes sont égales. Ainsi, une p-value significative (p <= 0,05) indique que les variances des différences des groupes ne sont pas égales.
- Résultats des corrections de la sphéricité à prendre en compte au cas où nous ne pourrions pas maintenir l’hypothèse de sphéricité. Deux corrections courantes utilisées dans la littérature sont fournies : Greenhouse-Geisser epsilon (GGe) et Huynh-Feldt epsilon (HFe) et leurs p-values correspondantes.
Interprétation des résultats de l’ANOVA
Lorsque l’hypothèse de sphéricité est respectée
Dans notre exemple, le test de sphéricité de Mauchly n’est pas significatif (p > 0,05) ; ceci indique que les variances des différences entre les niveaux du facteur intra-sujets sont égales. On peut donc supposer la sphéricité de la matrice de covariance et interpréter le résultat standard disponible dans le tableau de l’ANOVA.
# Afficher le tableau ANOVA
res$ANOVA
## Effect DFn DFd F p p<.05 ges
## 1 time 2 18 55.5 2.01e-08 * 0.829
Le score de l’estime de soi était statistiquement significativement différent aux différents temps durant le régime alimentaire, F(2, 18) = 55, p < 0.0001, eta2[g] = 0.83.
où,
F
Indique que nous comparons à une distribution F (test F) ;(2, 18)
indique les degrés de liberté pourtime
etError(time)
, respectivement ;81.8
indique la valeur statistique F obtenuep
spécifie la p-valueges
(generalized eta squared, eta2[g]) est la taille de l’effet (quantité de variabilité due au facteur intra-sujets)
Lorsque l’hypothèse de sphéricité n’est pas respectée
Si vos données ont violé l’hypothèse de sphéricité (c.-à-d. le test de Mauchly, p <= 0,05), vous devriez interpréter les résultats du tableau sphericity corrections
(corrections de sphéricité), où il y a eu des ajustements aux degrés de liberté, ce qui a un impact sur la significativité statistique (c.-à-d. la p-value) du test. La correction est appliquée en multipliant DFn
et DFd
par le coefficient de correction (valeurs epsilons de Greenhouse-Geisser (GG) et Huynh-Feldt (HF)).
Notez que l’epsilon fournit une mesure du degré auquel la sphéricité a été violée. Une valeur de 1 indique qu’il n’y a pas d’écart par rapport à la sphéricité (toutes les variances des différences des groupes sont égales). Une violation de la sphéricité entraîne une valeur d’epsilon inférieure à 1. Plus l’epsilon est éloigné de 1, plus la violation est grave.
Les corrections Greenhouse-Geisser et Huynh-Feldt sont données ci-dessous:
res$`Sphéricité Corrections`
## NULL
On constate que le score moyen d’estime de soi reste statistiquement significativement différent aux différents points dans le temps, même après les corrections de sphéricité (p[GG] < 0,001 et p[HF] < 0,001).
Choix des méthodes de correction de la sphéricité
Des deux méthodes de correction de la sphéricité, la correction de Huynh-Feldt est considérée comme la moins conservatrice (surestimation d’epsilon), tandis que Greenhouse-Geisser est considérée plus conservatrice (sous estimation d’epsilon quand epsilon est proche de 1).
La recommandation générale est d’utiliser la correction Greenhouse-Geisser, en particulier lorsque l’epsilon < 0,75. Dans le cas où epsilon est supérieur à 0,75, certains statisticiens recommandent d’utiliser la correction de Huynh-Feldt (Girden 1992).
Table ANOVA
La fonction R get_anova_table()
[rstatix package] peut être utilisé pour extraire et interpréter facilement le tableau ANOVA à partir de la sortie de anova_test()
. Il renvoie un tableau ANOVA qui a été automatiquement corrigé pour tenir compte d’un éventuel écart par rapport à l’hypothèse de sphéricité dans un plan expérimental contenant des facteurs à mesures répétées.
Pour l’ANOVA sur mesures répétées, le comportement par défaut de la fonction get_anova_table()
est d’appliquer automatiquement la correction de sphéricité de Greenhouse-Geisser uniquement aux facteurs violant l’hypothèse de sphéricité (c’est-à-dire, la p-value du test de Mauchly est significative, p <= 0.05).
Utilisation:
get_anova_table(x, correction = c("auto", "GG", "HF", "none"))
x
: un objet de class anova_test.correction
: utilisé uniquement dans le test ANOVA sur mesures répétées pour préciser quelle correction de degrés de liberté doit être rapportée pour les facteurs intra-sujets. Les valeurs possibles sont:- “GG” : applique la correction de Greenhouse-Geisser à tous les facteurs intra-sujets même si l’hypothèse de sphéricité est respectée (c.-à-d. que le test de Mauchly n’est pas significatif, p > 0,05).
- “HF” : applique la correction de Hyunh-Feldt à tous les facteurs intra-sujets même si l’hypothèse de sphéricité est respectée,
- “none” : renvoie le tableau standard ANOVA sans aucune correction et
- “auto” : applique automatiquement la correction GG aux seuls facteurs intra-sujets violant l’hypothèse de sphéricité (c’est-à-dire que la valeur p du test de Mauchly est significative, p <= 0,05).
Exemples:
Dans notre exemple, la sphéricité peut être supposée selon le test de Mauchly ; ainsi le tableau standard de l’ ANOVA n’est pas modifié avec l’option correction = "auto"
. Spécifier l’option correction = "GG"
appliquera la correction même si l’hypothèse est satisfaite.
# correction = "auto"
get_anova_table(res)
## ANOVA Table (type III tests)
##
## Effect DFn DFd F p p<.05 ges
## 1 time 2 18 55.5 2.01e-08 * 0.829
# correction = "GG"
get_anova_table(res, correction = "GG")
## ANOVA Table (type III tests)
##
## Effect DFn DFd F p p<.05 ges
## 1 time 1.38 12.4 55.5 2.16e-06 * 0.829
Résumé
Cet article décrit les bases de l’hypothèse de sphéricité. Les codes R sont fournis pour calculer l’ANOVA sur mesures répétées et le test de sphéricité de Mauchly en utilisant la fonction anova_test()
[package rstatix]. Nous montrons également comment interpréter les résultats de l’analyse de variance lorsque l’hypothèse de sphéricité est satisfaite ou non. Enfin, nous introduisons la fonction R get_anova_table()
[rstatix] pour extraire et interpréter facilement la table ANOVA qui est automatiquement corrigée pour un éventuel écart par rapport à l’hypothèse de sphéricité.
References
Girden, E. 1992. “ANOVA: Repeated Measures.” Newbury Park, CA: Sage.
Version: English
No Comments