{"id":11062,"date":"2019-12-08T01:15:15","date_gmt":"2019-12-07T23:15:15","guid":{"rendered":"https:\/\/www.datanovia.com\/en\/?post_type=dt_lessons&#038;p=11062"},"modified":"2019-12-08T01:15:15","modified_gmt":"2019-12-07T23:15:15","slug":"anova-dans-r","status":"publish","type":"dt_lessons","link":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/","title":{"rendered":"ANOVA dans R"},"content":{"rendered":"<div id=\"rdoc\">\n<p>Le <strong>test ANOVA<\/strong> (ou <strong>Analyse de variance<\/strong>) est utilis\u00e9 pour comparer la moyenne de plusieurs groupes. Le terme ANOVA est un peu trompeur. Bien que le nom de la technique fasse r\u00e9f\u00e9rence aux variances, l\u2019objectif principal de l\u2019ANOVA est d\u2019\u00e9tudier les diff\u00e9rences de moyennes.<\/p>\n<p>Ce chapitre d\u00e9crit les diff\u00e9rents types d\u2019ANOVA pour <strong>comparer des groupes ind\u00e9pendants<\/strong>, notamment:<\/p>\n<ul>\n<li><strong>ANOVA \u00e0 un facteur<\/strong> : une extension du test t pour \u00e9chantillons ind\u00e9pendants comparant les moyennes dans une situation o\u00f9 il y a plus de deux groupes. C\u2019est le cas le plus simple du test ANOVA o\u00f9 les donn\u00e9es sont organis\u00e9es en plusieurs groupes en fonction d\u2019une seule variable de groupement (aussi appel\u00e9e facteur). D\u2019autres synonymes sont : <em>ANOVA \u00e0 1 facteur<\/em>, <em>ANOVA \u00e0 un facteur<\/em> et <em>ANOVA inter-sujets<\/em>.<\/li>\n<li><strong>ANOVA \u00e0 deux facteurs<\/strong> utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l\u2019effet de deux variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue. D\u2019autres synonymes sont : <em>plans factoriels \u00e0 deux niveaux<\/em>, <em>Anova factoriels<\/em> ou <em>ANOVA \u00e0 deux facteurs-inter-sujets<\/em>.<\/li>\n<li><strong>ANOVA \u00e0 trois facteurs<\/strong> utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l\u2019effet de trois variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue. D\u2019autres synonymes sont : <em>ANOVA factorielle<\/em> ou <em>ANOVA inter-sujets \u00e0 trois facteurs<\/em>.<\/li>\n<\/ul>\n<div class=\"block\">\n<p>Il est \u00e0 noter que les variables de regroupement ind\u00e9pendantes sont \u00e9galement connues sous le nom de <strong>facteurs inter-sujets<\/strong>.<\/p>\n<p>Le but principal de l\u2019ANOVA \u00e0 deux facteurs et de l\u2019ANOVA \u00e0 trois facteurs est, respectivement, d\u2019\u00e9valuer s\u2019il existe un effet d\u2019interaction statistiquement significatif entre deux et trois facteurs pour expliquer une variable-r\u00e9ponse continue.<\/p>\n<\/div>\n<p>Vous apprendrez \u00e0:<\/p>\n<ul>\n<li><strong>Calculer et interpr\u00e9ter les diff\u00e9rents types d\u2019ANOVA dans R<\/strong> pour comparer des groupes ind\u00e9pendants.<\/li>\n<li><strong>V\u00e9rifier les hypoth\u00e8ses du test ANOVA<\/strong><\/li>\n<li><strong>Effectuer des tests post-hoc<\/strong>, de multiples comparaisons par paires entre les groupes pour identifier les groupes qui sont diff\u00e9rents<\/li>\n<li><strong>Visualiser les donn\u00e9es<\/strong> avec des boxplots, ajouter au graphique, les p-values de l\u2019ANOVA et celles des comparaisons multiples par paires<\/li>\n<\/ul>\n<p>Sommaire:<\/p>\n<div id=\"TOC\">\n<ul>\n<li><a href=\"#notions-de-base\">Notions de base<\/a><\/li>\n<li><a href=\"#hypotheses\">Hypoth\u00e8ses<\/a><\/li>\n<li><a href=\"#prerequis\">Pr\u00e9requis<\/a><\/li>\n<li><a href=\"#one-way-independent-measures\">ANOVA \u00e0 un facteur<\/a>\n<ul>\n<li><a href=\"#preparation-des-donnees\">Pr\u00e9paration des donn\u00e9es<\/a><\/li>\n<li><a href=\"#statistiques-descriptives\">Statistiques descriptives<\/a><\/li>\n<li><a href=\"#visualisation\">Visualisation<\/a><\/li>\n<li><a href=\"#verifier-les-hypotheses\">V\u00e9rifier les hypoth\u00e8ses<\/a><\/li>\n<li><a href=\"#calculs\">Calculs<\/a><\/li>\n<li><a href=\"#tests-post-hoc\">Tests post-hoc<\/a><\/li>\n<li><a href=\"#rapporter\">Rapporter<\/a><\/li>\n<li><a href=\"#relaxer-lhypothese-dhomogeneite-de-la-variance\">Relaxer l\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 de la variance<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#two-way-independent-anova\">ANOVA \u00e0 deux facteurs<\/a>\n<ul>\n<li><a href=\"#preparation-des-donnees-1\">Pr\u00e9paration des donn\u00e9es<\/a><\/li>\n<li><a href=\"#statistiques-descriptives-1\">Statistiques descriptives<\/a><\/li>\n<li><a href=\"#visualisation-1\">Visualisation<\/a><\/li>\n<li><a href=\"#verifier-les-hypotheses-1\">V\u00e9rifier les hypoth\u00e8ses<\/a><\/li>\n<li><a href=\"#calculs-1\">Calculs<\/a><\/li>\n<li><a href=\"#tests-post-hoc-1\">Tests post-hoc<\/a><\/li>\n<li><a href=\"#rapporter-1\">Rapporter<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#three-way-independent-anova\">ANOVA \u00e0 trois facteurs<\/a>\n<ul>\n<li><a href=\"#preparation-des-donnees-2\">Pr\u00e9paration des donn\u00e9es<\/a><\/li>\n<li><a href=\"#statistiques-descriptives-2\">Statistiques descriptives<\/a><\/li>\n<li><a href=\"#visualisation-2\">Visualisation<\/a><\/li>\n<li><a href=\"#verifier-les-hypotheses-2\">V\u00e9rifier les hypoth\u00e8ses<\/a><\/li>\n<li><a href=\"#calculs-2\">Calculs<\/a><\/li>\n<li><a href=\"#tests-post-hoc-2\">Tests post-hoc<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#resume\">R\u00e9sum\u00e9<\/a><\/li>\n<\/ul>\n<\/div>\n<div class='dt-sc-hr-invisible-medium  '><\/div>\n<div class='dt-sc-ico-content type1'><div class='custom-icon' ><a href='https:\/\/www.datanovia.com\/en\/fr\/produit\/pratiques-des-statistiques-dans-r-pour-comparaison-de-groupes-variables-numeriques\/' target='_blank'><span class='fa fa-book'><\/span><\/a><\/div><h4><a href='https:\/\/www.datanovia.com\/en\/fr\/produit\/pratiques-des-statistiques-dans-r-pour-comparaison-de-groupes-variables-numeriques\/' target='_blank'> Livre Apparent\u00e9 <\/a><\/h4>Pratique des Statistiques dans R II - Comparaison de Groupes: Variables Num\u00e9riques<\/div>\n<div class='dt-sc-hr-invisible-medium  '><\/div>\n<div id=\"notions-de-base\" class=\"section level2\">\n<h2>Notions de base<\/h2>\n<p>Supposons que nous ayons 3 groupes \u00e0 comparer, comme illustr\u00e9 dans l\u2019image ci-dessous. La ligne en pointill\u00e9s indique la moyenne du groupe. La figure montre la variation entre les moyennes des groupes (panel A) et la variation au sein de chaque groupe (panel B), \u00e9galement appel\u00e9e <strong>variance r\u00e9siduelle<\/strong>.<\/p>\n<p>L\u2019id\u00e9e qui sous-tend le test ANOVA est tr\u00e8s simple : si la variation moyenne entre les groupes est suffisamment importante par rapport \u00e0 la variation moyenne au sein des groupes, on peut conclure qu\u2019au moins la moyenne d\u2019un des groupes n\u2019est pas \u00e9gale aux autres.<\/p>\n<p>Il est donc possible d\u2019\u00e9valuer si les diff\u00e9rences entre les moyennes des groupes sont significatives en comparant les deux estimations de variance. C\u2019est pourquoi la m\u00e9thode est appel\u00e9e <strong>analyse de variance<\/strong> alors que l\u2019objectif principal est de comparer les moyennes des groupes.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/images\/one-way-anova-basics.png\" alt=\"principes de base de l\u2019anova \u00e0 un facteur\" \/><\/p>\n<p>Bri\u00e8vement, la proc\u00e9dure math\u00e9matique du test ANOVA est la suivante:<\/p>\n<ol style=\"list-style-type: decimal;\">\n<li>Calculer la <strong>variance intra-groupe<\/strong>, aussi appel\u00e9e <strong>variance r\u00e9siduelle<\/strong>. Cela nous indique \u00e0 quel point chaque participant est diff\u00e9rent de la moyenne de son propre groupe (voir figure, panel B).<\/li>\n<li>Calculer la <strong>variance entre les moyennes des groupes<\/strong> (voir figure, pannel A).<\/li>\n<li>Calculez la statistique F comme \u00e9tant : <code>variance.inter.groups\/variance.intra.groups<\/code>.<\/li>\n<\/ol>\n<div class=\"success\">\n<p>Notez qu\u2019une valeur petite de F (F &lt; 1) indique qu\u2019il n\u2019y a pas de diff\u00e9rence significative entre les moyennes des \u00e9chantillons compar\u00e9s.<\/p>\n<p>Cependant, un ratio plus \u00e9lev\u00e9 signifie que les variations entre les moyennes des groupes sont tr\u00e8s diff\u00e9rentes les unes des autres par rapport \u00e0 la variation des observations individuelles dans chaque groupe.<\/p>\n<\/div>\n<\/div>\n<div id=\"hypotheses\" class=\"section level2\">\n<h2>Hypoth\u00e8ses<\/h2>\n<p>Le test ANOVA pose les hypoth\u00e8ses suivantes au sujet des donn\u00e9es:<\/p>\n<ul>\n<li><strong>Ind\u00e9pendance des observations<\/strong>. Chaque sujet ne doit appartenir qu\u2019\u00e0 un seul groupe. Il n\u2019y a aucun lien entre les observations de chaque groupe. Il n\u2019est pas permis d\u2019avoir des mesures r\u00e9p\u00e9t\u00e9es pour les m\u00eames participants.<\/li>\n<li><strong>Aucune valeur aberrante significative<\/strong> dans aucune cellule du plan<\/li>\n<li><strong>Normalit\u00e9<\/strong>. les donn\u00e9es de chaque cellule du plan devraient \u00eatre distribu\u00e9es approximativement normalement.<\/li>\n<li><strong>Homog\u00e9n\u00e9it\u00e9 des variances<\/strong>. La variance de la variable-r\u00e9ponse doit \u00eatre \u00e9gale dans chaque cellule du plan exp\u00e9rimental.<\/li>\n<\/ul>\n<p>Avant de calculer le test ANOVA, vous devez effectuer quelques tests pr\u00e9liminaires pour v\u00e9rifier si les hypoth\u00e8ses sont remplies.<\/p>\n<div class=\"warning\">\n<p>Notez que, si les hypoth\u00e8ses ci-dessus ne sont pas satisfaites, il existe une alternative non param\u00e9trique (<em>test de Kruskal-Wallis<\/em>) \u00e0 l\u2019ANOVA \u00e0 un facteur.<\/p>\n<p>Malheureusement, il n\u2019existe pas d\u2019alternative non param\u00e9trique \u00e0 l\u2019ANOVA \u00e0 deux et \u00e0 trois facteurs. Ainsi, dans le cas o\u00f9 les hypoth\u00e8ses ne sont pas satisfaites, vous pourriez envisager d\u2019ex\u00e9cuter l\u2019ANOVA \u00e0 deux\/trois facteurs sur les donn\u00e9es transform\u00e9es et non transform\u00e9es pour voir s\u2019il y a des diff\u00e9rences significatives.<\/p>\n<p>Si les deux tests vous am\u00e8nent aux m\u00eames conclusions, vous pourriez choisir de ne pas transformer la variable-r\u00e9ponse et de poursuivre l\u2019ANOVA \u00e0 deux\/trois facteurs sur les donn\u00e9es initiales.<\/p>\n<p>Il est \u00e9galement possible d\u2019effectuer un test ANOVA robuste \u00e0 l\u2019aide du package R <strong>WRS2<\/strong>.<\/p>\n<p>Quel que soit votre choix, vous devez rapporter ce que vous avez fait dans vos r\u00e9sultats.<\/p>\n<\/div>\n<\/div>\n<div id=\"prerequis\" class=\"section level2\">\n<h2>Pr\u00e9requis<\/h2>\n<p>Assurez-vous d\u2019avoir les paquets R suivants:<\/p>\n<ul>\n<li><code>tidyverse<\/code> pour la manipulation et la visualisation des donn\u00e9es<\/li>\n<li><code>ggpubr<\/code> pour cr\u00e9er facilement des graphiques pr\u00eats \u00e0 la publication<\/li>\n<li><code>rstatix<\/code> offre des fonctions R conviviales pour des analyses statistiques faciles \u00e0 r\u00e9aliser<\/li>\n<li><code>datarium<\/code>: contient les jeux de donn\u00e9es requis pour ce chapitre<\/li>\n<\/ul>\n<p>Charger les packages R requis:<\/p>\n<pre class=\"r\"><code>library(tidyverse)\r\nlibrary(ggpubr)\r\nlibrary(rstatix)<\/code><\/pre>\n<p>Fonctions R cl\u00e9s : <code>anova_test()<\/code> [paquet rstatix], wrapper autour de la fonction <code>car::Anova()<\/code>.<\/p>\n<\/div>\n<div id=\"one-way-independent-measures\" class=\"section level2\">\n<h2>ANOVA \u00e0 un facteur<\/h2>\n<div id=\"preparation-des-donnees\" class=\"section level3\">\n<h3>Pr\u00e9paration des donn\u00e9es<\/h3>\n<p>Ici, nous utiliserons le jeu de donn\u00e9es int\u00e9gr\u00e9 \u00e0 R nomm\u00e9 <code>PlantGrowth<\/code>. Il contient le poids des plantes obtenues sous un contr\u00f4le et deux conditions de traitement diff\u00e9rentes.<\/p>\n<p>Charger et inspecter les donn\u00e9es en utilisant la fonction <code>sample_n_by()<\/code> pour afficher une ligne al\u00e9atoire par groupes:<\/p>\n<pre class=\"r\"><code>data(\"PlantGrowth\")\r\nset.seed(1234)\r\nPlantGrowth %&gt;% sample_n_by(group, size = 1)<\/code><\/pre>\n<pre><code>## # A tibble: 3 x 2\r\n##   weight group\r\n##    &lt;dbl&gt; &lt;fct&gt;\r\n## 1   5.58 ctrl \r\n## 2   6.03 trt1 \r\n## 3   4.92 trt2<\/code><\/pre>\n<p>Afficher les niveaux de la variable de groupement:<\/p>\n<pre class=\"r\"><code>levels(PlantGrowth$group)<\/code><\/pre>\n<pre><code>## [1] \"ctrl\" \"trt1\" \"trt2\"<\/code><\/pre>\n<p>Si les niveaux ne sont pas automatiquement dans le bon ordre, r\u00e9organisez-les comme suit:<\/p>\n<pre class=\"r\"><code>PlantGrowth &lt;- PlantGrowth %&gt;%\r\n  reorder_levels(group, order = c(\"ctrl\", \"trt1\", \"trt2\"))<\/code><\/pre>\n<div class=\"block\">\n<p>L\u2019ANOVA \u00e0 un facteur peut \u00eatre utilis\u00e9e pour d\u00e9terminer si les moyennes de croissance des plantes sont significativement diff\u00e9rentes entre les trois conditions.<\/p>\n<\/div>\n<\/div>\n<div id=\"statistiques-descriptives\" class=\"section level3\">\n<h3>Statistiques descriptives<\/h3>\n<p>Calculer quelques statistiques sommaires (nombre, moyenne et sd) de la variable <code>weight<\/code> (poids) organis\u00e9e par groupes:<\/p>\n<pre class=\"r\"><code>PlantGrowth %&gt;%\r\n  group_by(group) %&gt;%\r\n  get_summary_stats(weight, type = \"mean_sd\")<\/code><\/pre>\n<pre><code>## # A tibble: 3 x 5\r\n##   group variable     n  mean    sd\r\n##   &lt;fct&gt; &lt;chr&gt;    &lt;dbl&gt; &lt;dbl&gt; &lt;dbl&gt;\r\n## 1 ctrl  weight      10  5.03 0.583\r\n## 2 trt1  weight      10  4.66 0.794\r\n## 3 trt2  weight      10  5.53 0.443<\/code><\/pre>\n<\/div>\n<div id=\"visualisation\" class=\"section level3\">\n<h3>Visualisation<\/h3>\n<p>Cr\u00e9ez un boxplot de <code>weight<\/code> par <code>group<\/code>:<\/p>\n<pre class=\"r\"><code>ggboxplot(PlantGrowth, x = \"group\", y = \"weight\")<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-one-way-boxplots-1.png\" width=\"288\" \/><\/p>\n<\/div>\n<div id=\"verifier-les-hypotheses\" class=\"section level3\">\n<h3>V\u00e9rifier les hypoth\u00e8ses<\/h3>\n<div id=\"valeurs-aberrantes\" class=\"section level4\">\n<h4>Valeurs aberrantes<\/h4>\n<p>Les valeurs aberrantes peuvent \u00eatre facilement identifi\u00e9es \u00e0 l\u2019aide de m\u00e9thodes des boxplots, impl\u00e9ment\u00e9es dans la fonction R <code>identify_outliers()<\/code> [paquet rstatix].<\/p>\n<pre class=\"r\"><code>PlantGrowth %&gt;% \r\n  group_by(group) %&gt;%\r\n  identify_outliers(weight)<\/code><\/pre>\n<pre><code>## # A tibble: 2 x 4\r\n##   group weight is.outlier is.extreme\r\n##   &lt;fct&gt;  &lt;dbl&gt; &lt;lgl&gt;      &lt;lgl&gt;     \r\n## 1 trt1    5.87 TRUE       FALSE     \r\n## 2 trt1    6.03 TRUE       FALSE<\/code><\/pre>\n<div class=\"success\">\n<p>Il n\u2019y avait pas de valeurs extr\u00eames aberrantes.<\/p>\n<\/div>\n<div class=\"warning\">\n<p>Notez que, dans le cas o\u00f9 vous avez des valeurs extr\u00eames aberrantes, cela peut \u00eatre d\u00fb \u00e0 : 1) erreurs de saisie de donn\u00e9es, erreurs de mesure ou valeurs inhabituelles.<\/p>\n<p>Vous pouvez de toute fa\u00e7on inclure la valeur aberrante dans l\u2019analyse si vous ne croyez pas que le r\u00e9sultat sera affect\u00e9 de fa\u00e7on substantielle. Ceci peut \u00eatre \u00e9valu\u00e9 en comparant le r\u00e9sultat du test ANOVA avec et sans la valeur aberrante.<\/p>\n<p>Il est \u00e9galement possible de conserver les valeurs aberrantes dans les donn\u00e9es et d\u2019effectuer un test ANOVA robuste en utilisant le package WRS2.<\/p>\n<\/div>\n<\/div>\n<div id=\"hypothese-de-normalite\" class=\"section level4\">\n<h4>Hypoth\u00e8se de normalit\u00e9<\/h4>\n<p>L\u2019hypoth\u00e8se de normalit\u00e9 peut \u00eatre v\u00e9rifi\u00e9e en utilisant l\u2019une des deux approches suivantes:<\/p>\n<ol style=\"list-style-type: decimal;\">\n<li><strong>Analyse des r\u00e9sidus du mod\u00e8le ANOVA<\/strong> pour v\u00e9rifier la normalit\u00e9 pour tous les groupes ensemble. Cette approche est plus facile et tr\u00e8s pratique lorsque vous avez plusieurs groupes ou s\u2019il y a peu de points de donn\u00e9es par groupe.<\/li>\n<li><strong>V\u00e9rifier la normalit\u00e9 pour chaque groupe s\u00e9par\u00e9ment<\/strong>. Cette approche peut \u00eatre utilis\u00e9e lorsque vous n\u2019avez que quelques groupes et plusieurs points de donn\u00e9es par groupe.<\/li>\n<\/ol>\n<p>Dans cette section, nous vous montrerons comment proc\u00e9der pour les options 1 et 2.<\/p>\n<p><strong>V\u00e9rifier l\u2019hypoth\u00e8se de normalit\u00e9 en analysant les r\u00e9sidus du mod\u00e8le<\/strong>. Le QQ plot et le test de normalit\u00e9 de Shapiro-Wilk sont utilis\u00e9s. Le graphique QQ plot dessine la corr\u00e9lation entre une donn\u00e9e d\u00e9finie et la distribution normale.<\/p>\n<pre class=\"r\"><code># Construire le mod\u00e8le lin\u00e9aire\r\nmodel  &lt;- lm(weight ~ group, data = PlantGrowth)\r\n# Cr\u00e9er un QQ plot des r\u00e9sidus\r\nggqqplot(residuals(model))<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-one-way-qq-plot-residuals-1.png\" width=\"384\" \/><\/p>\n<pre class=\"r\"><code># Calculer le test de normalit\u00e9 de Shapiro-Wilk\r\nshapiro_test(residuals(model))<\/code><\/pre>\n<pre><code>## # A tibble: 1 x 3\r\n##   variable         statistic p.value\r\n##   &lt;chr&gt;                &lt;dbl&gt;   &lt;dbl&gt;\r\n## 1 residuals(model)     0.966   0.438<\/code><\/pre>\n<div class=\"success\">\n<p>Dans le QQ plot, comme tous les points se situent approximativement le long de la ligne de r\u00e9f\u00e9rence, nous pouvons supposer une normalit\u00e9. Cette conclusion est \u00e9tay\u00e9e par le test Shapiro-Wilk. La p-value n\u2019est pas significative (p = 0,13), on peut donc supposer une normalit\u00e9.<\/p>\n<\/div>\n<p><strong>V\u00e9rifier l\u2019hypoth\u00e8se de normalit\u00e9 par groupe<\/strong>. Calcul du test Shapiro-Wilk pour chaque niveau de groupe. Si les donn\u00e9es sont normalement distribu\u00e9es, la p-value doit \u00eatre sup\u00e9rieure \u00e0 0,05.<\/p>\n<pre class=\"r\"><code>PlantGrowth %&gt;%\r\n  group_by(group) %&gt;%\r\n  shapiro_test(weight)<\/code><\/pre>\n<pre><code>## # A tibble: 3 x 4\r\n##   group variable statistic     p\r\n##   &lt;fct&gt; &lt;chr&gt;        &lt;dbl&gt; &lt;dbl&gt;\r\n## 1 ctrl  weight       0.957 0.747\r\n## 2 trt1  weight       0.930 0.452\r\n## 3 trt2  weight       0.941 0.564<\/code><\/pre>\n<div class=\"success\">\n<p>Le score \u00e9tait normalement distribu\u00e9 (p &gt; 0,05) pour chaque groupe, tel qu\u2019\u00e9valu\u00e9 par le test de normalit\u00e9 de Shapiro-Wilk.<\/p>\n<\/div>\n<p>Notez que, si la taille de votre \u00e9chantillon est sup\u00e9rieure \u00e0 50, le graphique de normalit\u00e9 QQ plot est pr\u00e9f\u00e9r\u00e9 parce qu\u2019avec des \u00e9chantillons de plus grande taille, le test de Shapiro-Wilk devient tr\u00e8s sensible m\u00eame \u00e0 un \u00e9cart mineur par rapport \u00e0 la normale.<\/p>\n<p>Le graphique QQ plot dessine la corr\u00e9lation entre une donn\u00e9e d\u00e9finie et la distribution normale. Cr\u00e9er des QQ plots pour chaque niveau de groupe:<\/p>\n<pre class=\"r\"><code>ggqqplot(PlantGrowth, \"weight\", facet.by = \"group\")<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-one-way-qq-plot-1.png\" width=\"480\" \/><\/p>\n<div class=\"success\">\n<p>Tous les points se situent approximativement le long de la ligne de r\u00e9f\u00e9rence, pour chaque cellule. Nous pouvons donc supposer la normalit\u00e9 des donn\u00e9es.<\/p>\n<\/div>\n<div class=\"warning\">\n<p>Si vous avez des doutes sur la normalit\u00e9 des donn\u00e9es, vous pouvez utiliser le test <em>Kruskal-Wallis<\/em>, qui est l\u2019alternative non param\u00e9trique au test ANOVA \u00e0 un facteur.<\/p>\n<\/div>\n<\/div>\n<div id=\"lhypothese-dhomogeneite-des-variances\" class=\"section level4\">\n<h4>L\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 des variances<\/h4>\n<ol style=\"list-style-type: decimal;\">\n<li>Le graphique <em>residuals versus fits<\/em> (r\u00e9sidus versus pr\u00e9dictions) peut \u00eatre utilis\u00e9 pour v\u00e9rifier l\u2019homog\u00e9n\u00e9it\u00e9 des variances.<\/li>\n<\/ol>\n<pre class=\"r\"><code>plot(model, 1)<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-one-way-residuals-vs-fits-1.png\" width=\"384\" \/><\/p>\n<div class=\"success\">\n<p>Dans le graphique ci-dessus, il n\u2019y a pas de relations \u00e9videntes entre les r\u00e9sidus et les valeurs calcul\u00e9es (fitted) (la moyenne de chaque groupe), ce qui est bon. On peut donc supposer l\u2019homog\u00e9n\u00e9it\u00e9 des variances.<\/p>\n<\/div>\n<ol style=\"list-style-type: decimal;\" start=\"2\">\n<li>Il est \u00e9galement possible d\u2019utiliser le <em>test de Levene<\/em> pour v\u00e9rifier <em>l\u2019homog\u00e9n\u00e9it\u00e9 des variances<\/em>:<\/li>\n<\/ol>\n<pre class=\"r\"><code>PlantGrowth %&gt;% levene_test(weight ~ group)<\/code><\/pre>\n<pre><code>## # A tibble: 1 x 4\r\n##     df1   df2 statistic     p\r\n##   &lt;int&gt; &lt;int&gt;     &lt;dbl&gt; &lt;dbl&gt;\r\n## 1     2    27      1.12 0.341<\/code><\/pre>\n<div class=\"success\">\n<p>Du r\u00e9sultat ci-dessus, nous pouvons voir que la p-value est &gt; 0,05, ce qui n\u2019est pas significatif. Cela signifie qu\u2019il n\u2019y a pas de diff\u00e9rence significative entre les variances d\u2019un groupe \u00e0 l\u2019autre. Par cons\u00e9quent, nous pouvons supposer l\u2019homog\u00e9n\u00e9it\u00e9 des variances dans les diff\u00e9rents groupes de traitement.<\/p>\n<\/div>\n<div class=\"warning\">\n<p>Dans une situation o\u00f9 l\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 de la variances n\u2019est pas satisfaite, vous pouvez calculer le test ANOVA de Welch \u00e0 un facteur en utilisant la fonction <em>welch_anova_test()<\/em> [rstatix package]. Ce test n\u2019exige pas l\u2019hypoth\u00e8se de variances \u00e9gales.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"calculs\" class=\"section level3\">\n<h3>Calculs<\/h3>\n<pre class=\"r\"><code>res.aov &lt;- PlantGrowth %&gt;% anova_test(weight ~ group)\r\nres.aov<\/code><\/pre>\n<pre><code>## ANOVA Table (type II tests)\r\n## \r\n##   Effect DFn DFd    F     p p&lt;.05   ges\r\n## 1  group   2  27 4.85 0.016     * 0.264<\/code><\/pre>\n<p>Dans le tableau ci-dessus, la colonne <code>ges<\/code> correspond l\u2019eta-carr\u00e9 g\u00e9n\u00e9ralis\u00e9 (taille de l\u2019effet). Il mesure la proportion de la variabilit\u00e9 de la variable-r\u00e9ponse (ici <code>weight<\/code> pour poids des plantes) qui peut \u00eatre expliqu\u00e9e par le pr\u00e9dicteur (ici <code>group<\/code> pour groupe de traitement). Une valeur de l\u2019effet de 0,26 (26 %) signifie que 26 % de la variation du poids (<code>weight<\/code>) peut \u00eatre attribuable aux conditions de traitement.<\/p>\n<div class=\"success\">\n<p>Le tableau ANOVA ci-dessus montre qu\u2019il existe des diff\u00e9rences significatives entre les groupes (p = 0,016), qui sont mis en \u00e9vidence par \u201c*\u201c, F(2, 27) = 4,85, p = 0,16, eta2[g] = 0,26.<\/p>\n<\/div>\n<p>l\u00e0 o\u00f9,<\/p>\n<ul>\n<li><code>F<\/code> indique que nous comparons \u00e0 une distribution F (test F) ; <code>(2, 27)<\/code> indique les degr\u00e9s de libert\u00e9 du num\u00e9rateur (DFn) et du d\u00e9nominateur (DFd), respectivement ; <code>4.85<\/code> indique la valeur statistique F obtenue<\/li>\n<li><code>p<\/code> sp\u00e9cifie la p-value<\/li>\n<li><code>ges<\/code> est la taille de l\u2019effet g\u00e9n\u00e9ralis\u00e9 (taille de la variabilit\u00e9 due au facteur)<\/li>\n<\/ul>\n<\/div>\n<div id=\"tests-post-hoc\" class=\"section level3\">\n<h3>Tests post-hoc<\/h3>\n<p>Une ANOVA, \u00e0 un facteur, significative est g\u00e9n\u00e9ralement suivie de tests post-hoc de Tukey pour effectuer de multiples comparaisons par paires entre les groupes. Fonction R cl\u00e9: <code>tukey_hsd()<\/code> [rstatix].<\/p>\n<pre class=\"r\"><code># Comparaisons par paires\r\npwc &lt;- PlantGrowth %&gt;% tukey_hsd(weight ~ group)\r\npwc<\/code><\/pre>\n<pre><code>## # A tibble: 3 x 8\r\n##   term  group1 group2 estimate conf.low conf.high p.adj p.adj.signif\r\n## * &lt;chr&gt; &lt;chr&gt;  &lt;chr&gt;     &lt;dbl&gt;    &lt;dbl&gt;     &lt;dbl&gt; &lt;dbl&gt; &lt;chr&gt;       \r\n## 1 group ctrl   trt1     -0.371   -1.06      0.320 0.391 ns          \r\n## 2 group ctrl   trt2      0.494   -0.197     1.19  0.198 ns          \r\n## 3 group trt1   trt2      0.865    0.174     1.56  0.012 *<\/code><\/pre>\n<p>Le r\u00e9sultat contient les colonnes suivantes:<\/p>\n<ul>\n<li><code>estimate<\/code>: estimation de la diff\u00e9rence entre les moyennes des deux groupes<\/li>\n<li><code>conf.low<\/code>, <code>conf.high<\/code> : les bornes inf\u00e9rieure et sup\u00e9rieure de l\u2019intervalle de confiance \u00e0 95 % (par d\u00e9faut)<\/li>\n<li><code>p.adj<\/code>: p-value apr\u00e8s ajustement pour les comparaisons multiples.<\/li>\n<\/ul>\n<div class=\"success\">\n<p>Il ressort du r\u00e9sultat que seule la diff\u00e9rence entre trt2 et trt1 est significative (p-value ajust\u00e9e = 0,012).<\/p>\n<\/div>\n<\/div>\n<div id=\"rapporter\" class=\"section level3\">\n<h3>Rapporter<\/h3>\n<p>Nous pourrions pr\u00e9senter les r\u00e9sultats de l\u2019analyse de variance \u00e0 un facteur comme suit:<\/p>\n<p>L\u2019ANOVA \u00e0 un facteur a \u00e9t\u00e9 r\u00e9alis\u00e9e pour \u00e9valuer si la croissance des plantes \u00e9tait diff\u00e9rente pour les 3 groupes de traitement diff\u00e9rents : ctr (n = 10), trt1 (n = 10) et trt2 (n = 10).<\/p>\n<p>Les donn\u00e9es sont pr\u00e9sent\u00e9es sous forme de moyenne +\/- \u00e9cart type. La croissance des plantes \u00e9tait statistiquement significativement diff\u00e9rente entre les diff\u00e9rents groupes de traitement, F(2, 27) = 4,85, p = 0,016, eta-carr\u00e9 g\u00e9n\u00e9ralis\u00e9 = 0,26.<\/p>\n<p>La croissance des plantes a diminu\u00e9 dans le groupe trt1 (4,66 +\/- 0,79) par rapport au groupe ctr (5,03 +\/- 0,58). Il a augment\u00e9 dans le groupe trt2 (5,53 +\/- 0,44) par rapport au groupe trt1 et ctr.<\/p>\n<p>Les analyses post-hoc de Tukey ont r\u00e9v\u00e9l\u00e9 que l\u2019augmentation de trt1 \u00e0 trt2 (0,87, IC \u00e0 95 % (0,17 \u00e0 1,56)) \u00e9tait statistiquement significative (p = 0,012), mais qu\u2019aucune autres diff\u00e9rences inter-groupes n\u2019\u00e9tait statistiquement significative.<\/p>\n<pre class=\"r\"><code># Visualisation : Boxplots avec p-values\r\npwc &lt;- pwc %&gt;% add_xy_position(x = \"group\")\r\nggboxplot(PlantGrowth, x = \"group\", y = \"weight\") +\r\n  stat_pvalue_manual(pwc, hide.ns = TRUE) +\r\n  labs(\r\n    subtitle = get_test_label(res.aov, detailed = TRUE),\r\n    caption = get_pwc_label(pwc)\r\n    )<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-one-way-anova-boxplots-with-p-values-1.png\" width=\"480\" \/><\/p>\n<\/div>\n<div id=\"relaxer-lhypothese-dhomogeneite-de-la-variance\" class=\"section level3\">\n<h3>Relaxer l\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 de la variance<\/h3>\n<p>Le test classique d\u2019ANOVA \u00e0 un facteur n\u00e9cessite l\u2019hypoth\u00e8se d\u2019\u00e9galit\u00e9 des variances pour tous les groupes. Dans notre exemple, l\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 de la variance s\u2019est r\u00e9v\u00e9l\u00e9e bonne : le test de Levene n\u2019est pas significatif.<\/p>\n<div class=\"block\">\n<p>Comment sauver notre test ANOVA, dans une situation o\u00f9 l\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 de la variance est viol\u00e9e ?<\/p>\n<\/div>\n<ul>\n<li>Le <strong>test ANOVA de Welch \u00e0 1 facteur<\/strong> est une alternative \u00e0 l\u2019ANOVA standard, \u00e0 1 facteur, dans les situations o\u00f9 l\u2019homog\u00e9n\u00e9it\u00e9 de la variance ne peut \u00eatre suppos\u00e9e (c.-\u00e0-d. le <em>test de Levene<\/em> est significatif).<\/li>\n<li>Dans ce cas, le test post-hoc de <strong>Games-Howell<\/strong> ou le <strong>test t par paires<\/strong> (sans l\u2019hypoth\u00e8se de variances \u00e9gales) peut \u00eatre utilis\u00e9 pour comparer toutes les combinaisons possibles de diff\u00e9rences de groupes.<\/li>\n<\/ul>\n<pre class=\"r\"><code># Test ANOVA de Welch \u00e0 un facteur\r\nres.aov2 &lt;- PlantGrowth %&gt;% welch_anova_test(weight ~ group)\r\n# Comparaisons par paires (Games-Howell)\r\npwc2 &lt;- PlantGrowth %&gt;% games_howell_test(weight ~ group)\r\n# Visualisation : Boxplots avec p-values\r\npwc2 &lt;- pwc2 %&gt;% add_xy_position(x = \"group\", step.increase = 1)\r\nggboxplot(PlantGrowth, x = \"group\", y = \"weight\") +\r\n  stat_pvalue_manual(pwc2, hide.ns = TRUE) +\r\n  labs(\r\n    subtitle = get_test_label(res.aov2, detailed = TRUE),\r\n    caption = get_pwc_label(pwc2)\r\n    )<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-welch-one-way-anova-boxplots-with-p-values-1.png\" width=\"480\" \/><\/p>\n<p>Vous pouvez \u00e9galement effectuer des comparaisons par paires \u00e0 l\u2019aide du test t sans hypoth\u00e8se d\u2019\u00e9galit\u00e9 des variances:<\/p>\n<pre class=\"r\"><code>pwc3 &lt;- PlantGrowth %&gt;% \r\n  pairwise_t_test(\r\n    weight ~ group, pool.sd = FALSE,\r\n    p.adjust.method = \"bonferroni\"\r\n    )\r\npwc3<\/code><\/pre>\n<\/div>\n<\/div>\n<div id=\"two-way-independent-anova\" class=\"section level2\">\n<h2>ANOVA \u00e0 deux facteurs<\/h2>\n<div id=\"preparation-des-donnees-1\" class=\"section level3\">\n<h3>Pr\u00e9paration des donn\u00e9es<\/h3>\n<p>Nous utiliserons le jeu de donn\u00e9es sur la satisfaction au travail [package datarium], qui contient le score de satisfaction au travail organis\u00e9 selon le sexe et le niveau de scolarit\u00e9.<\/p>\n<p>Dans cette \u00e9tude, une recherche vise \u00e0 \u00e9valuer s\u2019il existe une interaction significative entre le sexe (<code>gender<\/code>) et le niveau d\u2019instruction (<code>education_level<\/code>) pour expliquer le score de satisfaction au travail. Un effet d\u2019interaction se produit lorsque l\u2019effet d\u2019une variable ind\u00e9pendante sur une variable-r\u00e9ponse d\u00e9pend du niveau des autres variables ind\u00e9pendantes. S\u2019il n\u2019existe pas d\u2019effet d\u2019interaction, les effets principaux pourraient \u00eatre rapport\u00e9s.<\/p>\n<p>Charger les donn\u00e9es et inspecter une ligne al\u00e9atoire par groupes:<\/p>\n<pre class=\"r\"><code>set.seed(123)\r\ndata(\"jobsatisfaction\", package = \"datarium\")\r\njobsatisfaction %&gt;% sample_n_by(gender, education_level, size = 1)<\/code><\/pre>\n<pre><code>## # A tibble: 6 x 4\r\n##   id    gender education_level score\r\n##   &lt;fct&gt; &lt;fct&gt;  &lt;fct&gt;           &lt;dbl&gt;\r\n## 1 3     male   school           5.07\r\n## 2 17    male   college          6.3 \r\n## 3 23    male   university      10   \r\n## 4 37    female school           5.51\r\n## 5 48    female college          5.65\r\n## 6 49    female university       8.26<\/code><\/pre>\n<div class=\"block\">\n<p>Dans cet exemple, l\u2019effet de \u201ceducation_level\u201d est notre <strong>variable focale<\/strong>, c\u2019est-\u00e0-dire notre premi\u00e8re cible. On pense que l\u2019effet de \u201ceducation_level\u201d (niveau d\u2019\u00e9ducation) d\u00e9pendra d\u2019un autre facteur, \u201cgender\u201d (sexe), que l\u2019on appelle <strong>variable mod\u00e9ratrice<\/strong>.<\/p>\n<\/div>\n<\/div>\n<div id=\"statistiques-descriptives-1\" class=\"section level3\">\n<h3>Statistiques descriptives<\/h3>\n<p>Calculer la moyenne et l\u2019\u00e9cart-type (\u00e9cart-type) de <code>score<\/code> par groupe:<\/p>\n<pre class=\"r\"><code>jobsatisfaction %&gt;%\r\n  group_by(gender, education_level) %&gt;%\r\n  get_summary_stats(score, type = \"mean_sd\")<\/code><\/pre>\n<pre><code>## # A tibble: 6 x 6\r\n##   gender education_level variable     n  mean    sd\r\n##   &lt;fct&gt;  &lt;fct&gt;           &lt;chr&gt;    &lt;dbl&gt; &lt;dbl&gt; &lt;dbl&gt;\r\n## 1 male   school          score        9  5.43 0.364\r\n## 2 male   college         score        9  6.22 0.34 \r\n## 3 male   university      score       10  9.29 0.445\r\n## 4 female school          score       10  5.74 0.474\r\n## 5 female college         score       10  6.46 0.475\r\n## 6 female university      score       10  8.41 0.938<\/code><\/pre>\n<\/div>\n<div id=\"visualisation-1\" class=\"section level3\">\n<h3>Visualisation<\/h3>\n<p>Cr\u00e9ez un boxplot du score par niveau de genre, color\u00e9 par niveau d\u2019\u00e9ducation:<\/p>\n<pre class=\"r\"><code>bxp &lt;- ggboxplot(\r\n  jobsatisfaction, x = \"gender\", y = \"score\",\r\n  color = \"education_level\", palette = \"jco\"\r\n  )\r\nbxp<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-two-way-boxplots-1.png\" width=\"432\" \/><\/p>\n<\/div>\n<div id=\"verifier-les-hypotheses-1\" class=\"section level3\">\n<h3>V\u00e9rifier les hypoth\u00e8ses<\/h3>\n<div id=\"valeurs-aberrantes-1\" class=\"section level4\">\n<h4>Valeurs aberrantes<\/h4>\n<p>Identifier les valeurs aberrantes dans chaque cellule du plan:<\/p>\n<pre class=\"r\"><code>jobsatisfaction %&gt;%\r\n  group_by(gender, education_level) %&gt;%\r\n  identify_outliers(score)<\/code><\/pre>\n<div class=\"success\">\n<p>Il n\u2019y avait pas de valeurs extr\u00eames aberrantes.<\/p>\n<\/div>\n<\/div>\n<div id=\"hypothese-de-normalite-1\" class=\"section level4\">\n<h4>Hypoth\u00e8se de normalit\u00e9<\/h4>\n<p><strong>V\u00e9rifier l\u2019hypoth\u00e8se de normalit\u00e9 en analysant les r\u00e9sidus du mod\u00e8le<\/strong>. Le QQ plot et le test de normalit\u00e9 de Shapiro-Wilk sont utilis\u00e9s.<\/p>\n<pre class=\"r\"><code># Construire le mod\u00e8le lin\u00e9aire\r\nmodel  &lt;- lm(score ~ gender*education_level,\r\n             data = jobsatisfaction)\r\n# Cr\u00e9er un QQ plot des r\u00e9sidus\r\nggqqplot(residuals(model))<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-two-way-qq-plot-residuals-1.png\" width=\"384\" \/><\/p>\n<pre class=\"r\"><code># Calculer le test de normalit\u00e9 de Shapiro-Wilk\r\nshapiro_test(residuals(model))<\/code><\/pre>\n<pre><code>## # A tibble: 1 x 3\r\n##   variable         statistic p.value\r\n##   &lt;chr&gt;                &lt;dbl&gt;   &lt;dbl&gt;\r\n## 1 residuals(model)     0.968   0.127<\/code><\/pre>\n<div class=\"success\">\n<p>Dans le QQ plot, comme tous les points se situent approximativement le long de la ligne de r\u00e9f\u00e9rence, nous pouvons supposer une normalit\u00e9. Cette conclusion est \u00e9tay\u00e9e par le test Shapiro-Wilk. La p-value n\u2019est pas significative (p = 0,13), on peut donc supposer une normalit\u00e9.<\/p>\n<\/div>\n<p><strong>V\u00e9rifier l\u2019hypoth\u00e8se de normalit\u00e9 par groupe<\/strong>. Calcul du test de Shapiro-Wilk pour chaque combinaison de niveaux des facteurs:<\/p>\n<pre class=\"r\"><code>jobsatisfaction %&gt;%\r\n  group_by(gender, education_level) %&gt;%\r\n  shapiro_test(score)<\/code><\/pre>\n<pre><code>## # A tibble: 6 x 5\r\n##   gender education_level variable statistic     p\r\n##   &lt;fct&gt;  &lt;fct&gt;           &lt;chr&gt;        &lt;dbl&gt; &lt;dbl&gt;\r\n## 1 male   school          score        0.980 0.966\r\n## 2 male   college         score        0.958 0.779\r\n## 3 male   university      score        0.916 0.323\r\n## 4 female school          score        0.963 0.819\r\n## 5 female college         score        0.963 0.819\r\n## 6 female university      score        0.950 0.674<\/code><\/pre>\n<div class=\"success\">\n<p>Le score \u00e9tait normalement distribu\u00e9 (p &gt; 0,05) pour chaque cellule, tel qu\u2019\u00e9valu\u00e9 par le test de normalit\u00e9 de Shapiro-Wilk.<\/p>\n<\/div>\n<p>Cr\u00e9er des graphiques QQ plots pour chaque cellule du plan:<\/p>\n<pre class=\"r\"><code>ggqqplot(jobsatisfaction, \"score\", ggtheme = theme_bw()) +\r\n  facet_grid(gender ~ education_level)<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-two-way-qq-plot-1.png\" width=\"576\" \/><\/p>\n<div class=\"success\">\n<p>Tous les points se situent approximativement le long de la ligne de r\u00e9f\u00e9rence, pour chaque cellule. Nous pouvons donc supposer la normalit\u00e9 des donn\u00e9es.<\/p>\n<\/div>\n<\/div>\n<div id=\"lhypothese-dhomogeneite-des-variances-1\" class=\"section level4\">\n<h4>L\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 des variances<\/h4>\n<p>Ceci peut \u00eatre v\u00e9rifi\u00e9 \u00e0 l\u2019aide du test de Levene:<\/p>\n<pre class=\"r\"><code>jobsatisfaction %&gt;% levene_test(score ~ gender*education_level)<\/code><\/pre>\n<pre><code>## # A tibble: 1 x 4\r\n##     df1   df2 statistic      p\r\n##   &lt;int&gt; &lt;int&gt;     &lt;dbl&gt;  &lt;dbl&gt;\r\n## 1     5    52      2.20 0.0686<\/code><\/pre>\n<div class=\"success\">\n<p>Le test de Levene n\u2019est pas significatif (p &gt; 0,05). Par cons\u00e9quent, nous pouvons supposer l\u2019homog\u00e9n\u00e9it\u00e9 des variances dans les diff\u00e9rents groupes.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"calculs-1\" class=\"section level3\">\n<h3>Calculs<\/h3>\n<p>Dans le code R ci-dessous, l\u2019ast\u00e9risque repr\u00e9sente l\u2019effet d\u2019interaction et l\u2019effet principal de chaque variable (et de toutes les interactions d\u2019ordre inf\u00e9rieur).<\/p>\n<pre class=\"r\"><code>res.aov &lt;- jobsatisfaction %&gt;% anova_test(score ~ gender * education_level)\r\nres.aov<\/code><\/pre>\n<pre><code>## ANOVA Table (type II tests)\r\n## \r\n##                   Effect DFn DFd       F        p p&lt;.05   ges\r\n## 1                 gender   1  52   0.745 3.92e-01       0.014\r\n## 2        education_level   2  52 187.892 1.60e-24     * 0.878\r\n## 3 gender:education_level   2  52   7.338 2.00e-03     * 0.220<\/code><\/pre>\n<div class=\"success\">\n<p>Il y avait une interaction statistiquement significative entre le sexe et le niveau de scolarit\u00e9 pour le score de satisfaction au travail, <em>F(2, 52) = 7,34, p = 0,002<\/em>.<\/p>\n<\/div>\n<\/div>\n<div id=\"tests-post-hoc-1\" class=\"section level3\">\n<h3>Tests post-hoc<\/h3>\n<p>Une <strong>interaction, \u00e0 2 facteurs, significative<\/strong> indique que l\u2019impact d\u2019un facteur (p.\u00a0ex., le niveau de scolarit\u00e9, <code>education_level<\/code>) sur la variable-r\u00e9ponse (p.\u00a0ex., le score de satisfaction professionnelle) d\u00e9pend du niveau de l\u2019autre facteur (p.\u00a0ex., sexe) (et vice versa). Ainsi, vous pouvez d\u00e9composer une interaction significative, \u00e0 deux facteurs, en:<\/p>\n<ul>\n<li><strong>Effet principal simple<\/strong> : ex\u00e9cuter un mod\u00e8le \u00e0 un facteur de la premi\u00e8re variable \u00e0 chaque niveau de la deuxi\u00e8me variable,<\/li>\n<li><strong>Comparaisons par paires<\/strong> : si l\u2019effet principal est significatif, effectuez plusieurs comparaisons par paires pour d\u00e9terminer quels groupes sont diff\u00e9rents.<\/li>\n<\/ul>\n<p>Dans le cas <strong>d\u2019une interaction \u00e0 deux facteurs non significative<\/strong>, vous devez d\u00e9terminer si vous avez des <strong>effets principaux<\/strong> statistiquement significatifs dans le r\u00e9sultat de l\u2019ANOVA. Un effet principal significatif peut \u00eatre suivi par des comparaisons par paires entre les groupes.<\/p>\n<div id=\"procedure-pour-une-interaction-significative-a-deux-facteurs\" class=\"section level4\">\n<h4>Proc\u00e9dure pour une interaction significative \u00e0 deux facteurs<\/h4>\n<div id=\"calculer-des-effets-principaux\" class=\"section level5\">\n<h5>Calculer des effets principaux<\/h5>\n<p>Dans notre exemple, vous pourriez donc \u00e9tudier l\u2019effet de <code>education_level<\/code> \u00e0 chaque niveau de <code>gender<\/code> ou \u00e9tudier l\u2019effet de <code>gender<\/code> \u00e0 chaque niveau de la variable <code>education_level<\/code>.<\/p>\n<p>Ici, nous allons ex\u00e9cuter une ANOVA \u00e0 un facteur de <code>education_level<\/code> \u00e0 chaque niveau de <code>gender<\/code>.<\/p>\n<div class=\"warning\">\n<p>Il est \u00e0 noter que, si vous avez satisfait aux hypoth\u00e8ses de l\u2019ANOVA \u00e0 deux facteurs (p.\u00a0ex. homog\u00e9n\u00e9it\u00e9 des variances), il est pr\u00e9f\u00e9rable d\u2019utiliser \u201cl\u2019erreur globale\u201d (provenant de l\u2019ANOVA \u00e0 deux facteurs) comme entr\u00e9e dans le mod\u00e8le ANOVA \u00e0 un facteur. Il sera ainsi plus facile de d\u00e9celer toute diff\u00e9rence statistiquement significative s\u2019il en existe (Keppel et Wickens, 2004 ; Maxwell et Delaney, 2004).<\/p>\n<p>Lorsque l\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 des variances n\u2019est pas satisfaite, vous pourriez envisager d\u2019ex\u00e9cuter des ANOVA \u00e0 un facteur utilisant des termes d\u2019erreur distincts.<\/p>\n<\/div>\n<p>Dans le code R ci-dessous, nous allons regrouper les donn\u00e9es par sexe et analyser les <strong>effets principaux<\/strong> simples du niveau de scolarit\u00e9 sur le score de satisfaction au travail. L\u2019argument <code>error<\/code> est utilis\u00e9 pour sp\u00e9cifier le mod\u00e8le ANOVA \u00e0 partir duquel l\u2019erreur globale et les degr\u00e9s de libert\u00e9 doivent \u00eatre calcul\u00e9s.<\/p>\n<pre class=\"r\"><code># Regrouper les donn\u00e9es par sexe et calculer l'anova\r\nmodel &lt;- lm(score ~ gender * education_level, data = jobsatisfaction)\r\njobsatisfaction %&gt;%\r\n  group_by(gender) %&gt;%\r\n  anova_test(score ~ education_level, error = model)<\/code><\/pre>\n<pre><code>## # A tibble: 2 x 8\r\n##   gender Effect            DFn   DFd     F        p `p&lt;.05`   ges\r\n##   &lt;fct&gt;  &lt;chr&gt;           &lt;dbl&gt; &lt;dbl&gt; &lt;dbl&gt;    &lt;dbl&gt; &lt;chr&gt;   &lt;dbl&gt;\r\n## 1 male   education_level     2    52 132.  3.92e-21 *       0.836\r\n## 2 female education_level     2    52  62.8 1.35e-14 *       0.707<\/code><\/pre>\n<div class=\"success\">\n<p>L\u2019effet principal simple de <code>education_level<\/code> (niveau_de_scolarit\u00e9) sur le score de satisfaction au travail \u00e9tait statistiquement significatif tant pour les hommes que pour les femmes (p &lt; 0,0001).<\/p>\n<p>En d\u2019autres termes, il y a une diff\u00e9rence statistiquement significative dans le score moyen de satisfaction au travail entre <strong>hommes<\/strong> de niveau scolaire, coll\u00e9gial ou universitaire, F(2, 52) = 132, p &lt; 0.0001. La m\u00eame conclusion s\u2019applique aux <strong>femmes<\/strong>, F(2, 52) = 62,8, p &lt; 0,0001.<\/p>\n<\/div>\n<div class=\"warning\">\n<p>Il est \u00e0 noter que la significativit\u00e9 statistique des analyses simples des effets principaux a \u00e9t\u00e9 accept\u00e9e \u00e0 un niveau alpha ajust\u00e9 de Bonferroni de 0,025. Cela correspond au niveau actuel auquel vous d\u00e9clarez une signification statistique (c.-\u00e0-d. p &lt; 0,05) divis\u00e9 par le nombre d\u2019effets principaux simples que vous calculez (c.-\u00e0-d. 2).<\/p>\n<\/div>\n<\/div>\n<div id=\"calculer-des-comparaisons-par-paires\" class=\"section level5\">\n<h5>Calculer des comparaisons par paires<\/h5>\n<p>Un effet principal statistiquement significatif peut \u00eatre suivi de <strong>multiples comparaisons par paires<\/strong> pour d\u00e9terminer quelles moyennes de groupe sont diff\u00e9rentes. Nous allons maintenant effectuer de multiples comparaisons par paires entre les diff\u00e9rents groupes de niveau d\u2019\u00e9ducation (<code>education_level<\/code>) par <code>gender<\/code>.<\/p>\n<p>Vous pouvez ex\u00e9cuter et interpr\u00e9ter toutes les comparaisons par paires possibles en utilisant l\u2019ajustement de Bonferroni. Ceci peut \u00eatre fait facilement en utilisant la fonction <code>emmeans_test()<\/code> [paquet rstatix], un wrapper autour du paquet <code>emmeans<\/code>, qui doit \u00eatre install\u00e9. Emmeans (estimated marginal means en anglais) signifie <strong>moyennes marginales estim\u00e9es<\/strong> (c\u2019est-\u00e0-dire moyennes des moindres carr\u00e9s ou moyennes ajust\u00e9es).<\/p>\n<p><strong>Comparez le score des diff\u00e9rents niveaux d\u2019\u00e9ducation<\/strong> par niveau de <code>gender<\/code> (genre):<\/p>\n<pre class=\"r\"><code># comparaisons par paires\r\nlibrary(emmeans)\r\npwc &lt;- jobsatisfaction %&gt;% \r\n  group_by(gender) %&gt;%\r\n  emmeans_test(score ~ education_level, p.adjust.method = \"bonferroni\") \r\npwc<\/code><\/pre>\n<pre><code>## # A tibble: 6 x 9\r\n##   gender .y.   group1  group2        df statistic        p    p.adj p.adj.signif\r\n## * &lt;fct&gt;  &lt;chr&gt; &lt;chr&gt;   &lt;chr&gt;      &lt;dbl&gt;     &lt;dbl&gt;    &lt;dbl&gt;    &lt;dbl&gt; &lt;chr&gt;       \r\n## 1 male   score school  college       52     -3.07 3.37e- 3 1.01e- 2 *           \r\n## 2 male   score school  university    52    -15.3  6.87e-21 2.06e-20 ****        \r\n## 3 male   score college university    52    -12.1  8.42e-17 2.53e-16 ****        \r\n## 4 female score school  college       52     -2.94 4.95e- 3 1.49e- 2 *           \r\n## 5 female score school  university    52    -10.8  6.07e-15 1.82e-14 ****        \r\n## 6 female score college university    52     -7.90 1.84e-10 5.52e-10 ****<\/code><\/pre>\n<div class=\"success\">\n<p>Il y avait une diff\u00e9rence significative du score de satisfaction professionnelle entre tous les groupes pour les hommes et les femmes (p &lt; 0,05).<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"procedure-pour-une-interaction-non-significative-a-deux-facteurs\" class=\"section level4\">\n<h4>Proc\u00e9dure pour une interaction non significative \u00e0 deux facteurs<\/h4>\n<div id=\"inspecter-les-effets-principaux\" class=\"section level5\">\n<h5>Inspecter les effets principaux<\/h5>\n<p>Si l\u2019interaction \u00e0 deux facteurs n\u2019est pas statistiquement significative, vous devez consulter l\u2019effet principal pour chacune des deux variables [<code>gender<\/code> (sexe) et <code>education_level<\/code> (niveau d\u2019\u00e9ducation)] dans le r\u00e9sultat de l\u2019ANOVA.<\/p>\n<pre class=\"r\"><code>res.aov<\/code><\/pre>\n<pre><code>## ANOVA Table (type II tests)\r\n## \r\n##                   Effect DFn DFd       F        p p&lt;.05   ges\r\n## 1                 gender   1  52   0.745 3.92e-01       0.014\r\n## 2        education_level   2  52 187.892 1.60e-24     * 0.878\r\n## 3 gender:education_level   2  52   7.338 2.00e-03     * 0.220<\/code><\/pre>\n<div class=\"success\">\n<p>Dans notre exemple, il y avait un effet principal statistiquement significatif du niveau de scolarit\u00e9 (F(2, 52) = 187,89, p &lt; 0,0001) sur le score de satisfaction professionnelle. Cependant, l\u2019effet principal du genre n\u2019\u00e9tait pas significatif, F (1, 52) = 0,74, p = 0,39.<\/p>\n<\/div>\n<\/div>\n<div id=\"calculer-des-comparaisons-par-paires-1\" class=\"section level5\">\n<h5>Calculer des comparaisons par paires<\/h5>\n<p>Effectuer des comparaisons par paires entre les groupes de niveau d\u2019\u00e9ducation pour d\u00e9terminer quels groupes sont significativement diff\u00e9rents. L\u2019ajustement de Bonferroni est appliqu\u00e9. Cette analyse peut \u00eatre faite en utilisant simplement la fonction de base R <code>pairwise_t_test()<\/code> ou en utilisant la fonction <code>emmeans_test()<\/code>.<\/p>\n<ul>\n<li>Test t par paire:<\/li>\n<\/ul>\n<pre class=\"r\"><code>jobsatisfaction %&gt;%\r\n  pairwise_t_test(\r\n    score ~ education_level, \r\n    p.adjust.method = \"bonferroni\"\r\n    )<\/code><\/pre>\n<div class=\"success\">\n<p>Toutes les diff\u00e9rences par paires \u00e9taient statistiquement significatives (p &lt; 0,05).<\/p>\n<\/div>\n<ul>\n<li>Comparaisons par paires \u00e0 l\u2019aide du test Emmeans. Vous devez sp\u00e9cifier le mod\u00e8le global \u00e0 partir duquel les degr\u00e9s de libert\u00e9 globaux doivent \u00eatre calcul\u00e9s. Il sera ainsi plus facile de d\u00e9celer toute diff\u00e9rence statistiquement significative, si elle existe.<\/li>\n<\/ul>\n<pre class=\"r\"><code>model &lt;- lm(score ~ gender * education_level, data = jobsatisfaction)\r\njobsatisfaction %&gt;% \r\n  emmeans_test(\r\n    score ~ education_level, p.adjust.method = \"bonferroni\",\r\n    model = model\r\n    )<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"rapporter-1\" class=\"section level3\">\n<h3>Rapporter<\/h3>\n<p>Une ANOVA \u00e0 deux facteurs a \u00e9t\u00e9 men\u00e9e pour examiner les effets du sexe et du niveau des \u00e9tudes sur le score de satisfaction professionnelle.<\/p>\n<p>L\u2019analyse des r\u00e9sidus a \u00e9t\u00e9 effectu\u00e9e pour v\u00e9rifier les hypoth\u00e8ses de l\u2019ANOVA \u00e0 deux facteurs. Les valeurs aberrantes ont \u00e9t\u00e9 d\u00e9termin\u00e9es \u00e0 l\u2019aide de la m\u00e9thode des Box plots, la normalit\u00e9 a \u00e9t\u00e9 d\u00e9termin\u00e9e \u00e0 l\u2019aide du test de normalit\u00e9 de Shapiro-Wilk et l\u2019homog\u00e9n\u00e9it\u00e9 des variances a \u00e9t\u00e9 d\u00e9termin\u00e9e par le test de Levene.<\/p>\n<p>Il n\u2019y avait pas de valeurs extr\u00eames aberrantes, les r\u00e9sidus \u00e9taient normalement distribu\u00e9s (p &gt; 0,05) et les variances \u00e9taient homog\u00e8nes (p &gt; 0,05).<\/p>\n<p>Il y avait une interaction statistiquement significative entre le sexe et le niveau des \u00e9tudes sur le score de satisfaction au travail, <code>F(2, 52) = 7.33, p = 0.0016, eta2[g] = 0.22<\/code>.<\/p>\n<p>Par cons\u00e9quent, une analyse des effets principaux pour le niveau d\u2019\u00e9ducation a \u00e9t\u00e9 effectu\u00e9e avec une signification statistique recevant un ajustement de Bonferroni. Il y avait une diff\u00e9rence statistiquement significative dans les scores moyens de \u201csatisfaction au travail\u201d pour les hommes (F(2, 52) = 132, p &lt; 0,0001) et les femmes (F(2, 52) = 62,8, p &lt; 0,0001) ayant un niveau scolaire, coll\u00e9gial ou universitaire.<\/p>\n<p>Toutes les comparaisons par paires ont \u00e9t\u00e9 analys\u00e9es entre les diff\u00e9rents <code>education_level<\/code> groups organized by <code>gender<\/code>. Il y avait une diff\u00e9rence significative du score de satisfaction au travail entre tous les groupes pour \u00e0 la fois les hommes et les femmes (p &lt; 0,05).<\/p>\n<pre class=\"r\"><code># Visualisation : Boxplots avec p-values\r\npwc &lt;- pwc %&gt;% add_xy_position(x = \"gender\")\r\nbxp +\r\n  stat_pvalue_manual(pwc) +\r\n  labs(\r\n    subtitle = get_test_label(res.aov, detailed = TRUE),\r\n    caption = get_pwc_label(pwc)\r\n    )<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-two-way-anova-box-plots-with-pvalues-1.png\" width=\"480\" \/><\/p>\n<\/div>\n<\/div>\n<div id=\"three-way-independent-anova\" class=\"section level2\">\n<h2>ANOVA \u00e0 trois facteurs<\/h2>\n<p><strong>L\u2019ANOVA \u00e0 trois facteurs<\/strong> est une extension de l\u2019analyse de variance \u00e0 deux facteurs pour \u00e9valuer s\u2019il y a un effet d\u2019interaction entre trois variables cat\u00e9gorielles ind\u00e9pendantes sur une variable-r\u00e9ponse continue.<\/p>\n<div id=\"preparation-des-donnees-2\" class=\"section level3\">\n<h3>Pr\u00e9paration des donn\u00e9es<\/h3>\n<p>Nous utiliserons le jeu de donn\u00e9es <code>headache<\/code> [package datarium], qui contient les mesures du score de douleur d\u2019\u00e9pisode migraineux chez 72 participants trait\u00e9s avec trois traitements diff\u00e9rents. Les participants incluent 36 hommes et 36 femmes. Les hommes et les femmes ont \u00e9t\u00e9 subdivis\u00e9s selon qu\u2019ils pr\u00e9sentaient un risque faible ou \u00e9lev\u00e9 de migraine.<\/p>\n<p>Nous voulons comprendre comment chaque variable ind\u00e9pendante (type de traitement, risque de migraine et sexe) interagit pour pr\u00e9dire le score de douleur.<\/p>\n<p>Charger les donn\u00e9es et inspecter une ligne al\u00e9atoire par combinaison de groupes:<\/p>\n<pre class=\"r\"><code>set.seed(123)\r\ndata(\"headache\", package = \"datarium\")\r\nheadache %&gt;% sample_n_by(gender, risk, treatment, size = 1)<\/code><\/pre>\n<pre><code>## # A tibble: 12 x 5\r\n##      id gender risk  treatment pain_score\r\n##   &lt;int&gt; &lt;fct&gt;  &lt;fct&gt; &lt;fct&gt;          &lt;dbl&gt;\r\n## 1    20 male   high  X              100  \r\n## 2    29 male   high  Y               91.2\r\n## 3    33 male   high  Z               81.3\r\n## 4     6 male   low   X               73.1\r\n## 5    12 male   low   Y               67.9\r\n## 6    13 male   low   Z               75.0\r\n## # \u2026 with 6 more rows<\/code><\/pre>\n<div class=\"block\">\n<p>Dans cet exemple, l\u2019effet des types de traitement est notre <strong>variable focale<\/strong>, c\u2019est-\u00e0-dire notre principale cible. On pense que l\u2019effet des traitements d\u00e9pendra de deux autres facteurs, le sexe et le niveau de risque de migraine, qui sont appel\u00e9s <strong>variables mod\u00e9ratrices<\/strong>.<\/p>\n<\/div>\n<\/div>\n<div id=\"statistiques-descriptives-2\" class=\"section level3\">\n<h3>Statistiques descriptives<\/h3>\n<p>Calculer la moyenne et l\u2019\u00e9cart-type (SD) de <code>pain_score<\/code> ( score_de_la_douleur) par groupe:<\/p>\n<pre class=\"r\"><code>headache %&gt;%\r\n  group_by(gender, risk, treatment) %&gt;%\r\n  get_summary_stats(pain_score, type = \"mean_sd\")<\/code><\/pre>\n<pre><code>## # A tibble: 12 x 7\r\n##   gender risk  treatment variable       n  mean    sd\r\n##   &lt;fct&gt;  &lt;fct&gt; &lt;fct&gt;     &lt;chr&gt;      &lt;dbl&gt; &lt;dbl&gt; &lt;dbl&gt;\r\n## 1 male   high  X         pain_score     6  92.7  5.12\r\n## 2 male   high  Y         pain_score     6  82.3  5.00\r\n## 3 male   high  Z         pain_score     6  79.7  4.05\r\n## 4 male   low   X         pain_score     6  76.1  3.86\r\n## 5 male   low   Y         pain_score     6  73.1  4.76\r\n## 6 male   low   Z         pain_score     6  74.5  4.89\r\n## # \u2026 with 6 more rows<\/code><\/pre>\n<\/div>\n<div id=\"visualisation-2\" class=\"section level3\">\n<h3>Visualisation<\/h3>\n<p>Cr\u00e9ez un boxplot de <code>pain_score<\/code> (score_douleur) par <code>treatment<\/code> (traitement), colorez les traits par <code>risk<\/code> (groupes de risque) et faire un facet du graphique par <code>gender<\/code> (sexe):<\/p>\n<pre class=\"r\"><code>bxp &lt;- ggboxplot(\r\n  headache, x = \"treatment\", y = \"pain_score\", \r\n  color = \"risk\", palette = \"jco\", facet.by = \"gender\"\r\n  )\r\nbxp<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-three-way-independent-1.png\" width=\"480\" \/><\/p>\n<\/div>\n<div id=\"verifier-les-hypotheses-2\" class=\"section level3\">\n<h3>V\u00e9rifier les hypoth\u00e8ses<\/h3>\n<div id=\"valeurs-aberrantes-2\" class=\"section level4\">\n<h4>Valeurs aberrantes<\/h4>\n<p>Identifier les valeurs aberrantes par groupe:<\/p>\n<pre class=\"r\"><code>headache %&gt;%\r\n  group_by(gender, risk, treatment) %&gt;%\r\n  identify_outliers(pain_score)<\/code><\/pre>\n<pre><code>## # A tibble: 4 x 7\r\n##   gender risk  treatment    id pain_score is.outlier is.extreme\r\n##   &lt;fct&gt;  &lt;fct&gt; &lt;fct&gt;     &lt;int&gt;      &lt;dbl&gt; &lt;lgl&gt;      &lt;lgl&gt;     \r\n## 1 female high  X            57       68.4 TRUE       TRUE      \r\n## 2 female high  Y            62       73.1 TRUE       FALSE     \r\n## 3 female high  Z            67       75.0 TRUE       FALSE     \r\n## 4 female high  Z            71       87.1 TRUE       FALSE<\/code><\/pre>\n<div class=\"success\">\n<p>On peut voir que les donn\u00e9es contiennent une valeur aberrante extr\u00eame (id = 57, femme \u00e0 risque \u00e9lev\u00e9 de migraine prenant le m\u00e9dicament X)<\/p>\n<\/div>\n<div class=\"warning\">\n<p>Les valeurs aberrantes peuvent \u00eatre dues \u00e0 : 1) erreurs de saisie des donn\u00e9es, 2) erreurs de mesure ou 3) valeurs inhabituelles.<\/p>\n<p>Vous pouvez de toute fa\u00e7on inclure la valeur aberrante dans l\u2019analyse si vous ne croyez pas que le r\u00e9sultat sera affect\u00e9 de fa\u00e7on substantielle. Ceci peut \u00eatre \u00e9valu\u00e9 en comparant le r\u00e9sultat du test ANOVA avec et sans la valeur aberrante.<\/p>\n<p>Il est \u00e9galement possible de conserver les valeurs aberrantes dans les donn\u00e9es et d\u2019effectuer un test ANOVA robuste en utilisant le package WRS2.<\/p>\n<\/div>\n<\/div>\n<div id=\"hypothese-de-normalite-2\" class=\"section level4\">\n<h4>Hypoth\u00e8se de normalit\u00e9<\/h4>\n<p><strong>V\u00e9rifier l\u2019hypoth\u00e8se de normalit\u00e9 en analysant les r\u00e9sidus du mod\u00e8le<\/strong>. Le QQ plot et le test de normalit\u00e9 de Shapiro-Wilk sont utilis\u00e9s.<\/p>\n<pre class=\"r\"><code>model  &lt;- lm(pain_score ~ gender*risk*treatment, data = headache)\r\n# Cr\u00e9er un QQ plot des r\u00e9sidus\r\nggqqplot(residuals(model))\r\n# Calculer le test de normalit\u00e9 de Shapiro-Wilk\r\nshapiro_test(residuals(model))<\/code><\/pre>\n<pre><code>## # A tibble: 1 x 3\r\n##   variable         statistic p.value\r\n##   &lt;chr&gt;                &lt;dbl&gt;   &lt;dbl&gt;\r\n## 1 residuals(model)     0.982   0.398<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-qq-plot-residuals-1.png\" width=\"384\" \/><\/p>\n<div class=\"success\">\n<p>Dans le QQ plot, comme tous les points se situent approximativement le long de la ligne de r\u00e9f\u00e9rence, nous pouvons supposer une normalit\u00e9. Cette conclusion est \u00e9tay\u00e9e par le test Shapiro-Wilk. La p-value n\u2019est pas significative (p = 0,4), on peut donc supposer une normalit\u00e9.<\/p>\n<\/div>\n<p><strong>V\u00e9rifier l\u2019hypoth\u00e8se de normalit\u00e9 par groupe<\/strong>. Calcul du test de Shapiro-Wilk pour chaque combinaison de niveaux des facteurs.<\/p>\n<pre class=\"r\"><code>headache %&gt;%\r\n  group_by(gender, risk, treatment) %&gt;%\r\n  shapiro_test(pain_score)<\/code><\/pre>\n<pre><code>## # A tibble: 12 x 6\r\n##   gender risk  treatment variable   statistic     p\r\n##   &lt;fct&gt;  &lt;fct&gt; &lt;fct&gt;     &lt;chr&gt;          &lt;dbl&gt; &lt;dbl&gt;\r\n## 1 male   high  X         pain_score     0.958 0.808\r\n## 2 male   high  Y         pain_score     0.902 0.384\r\n## 3 male   high  Z         pain_score     0.955 0.784\r\n## 4 male   low   X         pain_score     0.982 0.962\r\n## 5 male   low   Y         pain_score     0.920 0.507\r\n## 6 male   low   Z         pain_score     0.924 0.535\r\n## # \u2026 with 6 more rows<\/code><\/pre>\n<div class=\"success\">\n<p>Les scores de douleur \u00e9taient normalement distribu\u00e9s (p &gt; 0,05) sauf pour un groupe (femme \u00e0 risque \u00e9lev\u00e9 de migraine prenant le m\u00e9dicament X, p = 0,0086), tel qu\u2019\u00e9valu\u00e9 par le test de normalit\u00e9 de Shapiro-Wilk.<\/p>\n<\/div>\n<p>Cr\u00e9er un QQ plot pour chaque cellule du plan:<\/p>\n<pre class=\"r\"><code>ggqqplot(headache, \"pain_score\", ggtheme = theme_bw()) +\r\n  facet_grid(gender + risk ~ treatment, labeller = \"label_both\")<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-qq-plot-1.png\" width=\"576\" \/><\/p>\n<div class=\"success\">\n<p>Tous les points se situent approximativement le long de la ligne de r\u00e9f\u00e9rence, \u00e0 l\u2019exception d\u2019un groupe (femmes \u00e0 risque \u00e9lev\u00e9 de migraine prenant le m\u00e9dicament X), o\u00f9 nous avons d\u00e9j\u00e0 identifi\u00e9 une valeur aberrante extr\u00eame.<\/p>\n<\/div>\n<\/div>\n<div id=\"lhypothese-dhomogeneite-des-variances-2\" class=\"section level4\">\n<h4>L\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 des variances<\/h4>\n<p>Ceci peut \u00eatre v\u00e9rifi\u00e9 \u00e0 l\u2019aide du test de Levene:<\/p>\n<pre class=\"r\"><code>headache %&gt;% levene_test(pain_score ~ gender*risk*treatment)<\/code><\/pre>\n<pre><code>## # A tibble: 1 x 4\r\n##     df1   df2 statistic     p\r\n##   &lt;int&gt; &lt;int&gt;     &lt;dbl&gt; &lt;dbl&gt;\r\n## 1    11    60     0.179 0.998<\/code><\/pre>\n<div class=\"success\">\n<p>Le test de Levene n\u2019est pas significatif (p &gt; 0,05). Par cons\u00e9quent, nous pouvons supposer l\u2019homog\u00e9n\u00e9it\u00e9 des variances dans les diff\u00e9rents groupes.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"calculs-2\" class=\"section level3\">\n<h3>Calculs<\/h3>\n<pre class=\"r\"><code>res.aov &lt;- headache %&gt;% anova_test(pain_score ~ gender*risk*treatment)\r\nres.aov<\/code><\/pre>\n<pre><code>## ANOVA Table (type II tests)\r\n## \r\n##                  Effect DFn DFd      F        p p&lt;.05   ges\r\n## 1                gender   1  60 16.196 1.63e-04     * 0.213\r\n## 2                  risk   1  60 92.699 8.80e-14     * 0.607\r\n## 3             treatment   2  60  7.318 1.00e-03     * 0.196\r\n## 4           gender:risk   1  60  0.141 7.08e-01       0.002\r\n## 5      gender:treatment   2  60  3.338 4.20e-02     * 0.100\r\n## 6        risk:treatment   2  60  0.713 4.94e-01       0.023\r\n## 7 gender:risk:treatment   2  60  7.406 1.00e-03     * 0.198<\/code><\/pre>\n<div class=\"success\">\n<p>Il y avait une interaction, \u00e0 trois facteurs, statistiquement significative entre le sexe, le risque et le traitement, <em>F(2, 60) = 7,41, p = 0,001<\/em>.<\/p>\n<\/div>\n<\/div>\n<div id=\"tests-post-hoc-2\" class=\"section level3\">\n<h3>Tests post-hoc<\/h3>\n<p><strong>S\u2019il y a un effet significatif d\u2019interaction \u00e0 trois facteurs<\/strong>, vous pouvez le d\u00e9composer en:<\/p>\n<ul>\n<li><strong>Interaction \u00e0 deux facteurs<\/strong> : ex\u00e9cuter l\u2019interaction, \u00e0 deux facteurs, \u00e0 chaque niveau de la troisi\u00e8me variable,<\/li>\n<li><strong>Effet principal<\/strong> : ex\u00e9cuter un mod\u00e8le, \u00e0 un facteur, \u00e0 chaque niveau de la deuxi\u00e8me variable, et<\/li>\n<li><strong>Comparaisons par paires<\/strong> : effectuer des comparaisons par paires ou d\u2019autres comparaisons post-hoc si n\u00e9cessaire.<\/li>\n<\/ul>\n<p><strong>Si vous n\u2019avez pas d\u2019interaction \u00e0 trois facteurs statistiquement significative<\/strong>, vous devez d\u00e9terminer si vous avez une interaction \u00e0 deux facteurs statistiquement significative \u00e0 partir du r\u00e9sultat de l\u2019ANOVA. Vous pouvez suivre une interaction significative \u00e0 deux facteurs par des analyses simples des effets principaux et des comparaisons par paires entre les groupes si n\u00e9cessaire.<\/p>\n<p>Dans cette section, nous d\u00e9crirons la proc\u00e9dure \u00e0 suivre pour une interaction significative \u00e0 trois facteurs.<\/p>\n<div id=\"calculer-des-interactions-a-deux-facteurs\" class=\"section level4\">\n<h4>Calculer des interactions \u00e0 deux facteurs<\/h4>\n<p>Vous \u00eates libre de d\u00e9cider des deux variables qui formeront les interactions \u00e0 deux facteurs et quelle variable agira comme troisi\u00e8me variable (mod\u00e9ratrice). Dans notre exemple, nous voulons \u00e9valuer l\u2019effet de l\u2019interaction <code>risque*traitement<\/code> sur <code>pain_score<\/code> (score de douleur) \u00e0 chaque niveau du genre (<code>gender<\/code>).<\/p>\n<div class=\"warning\">\n<p>Notez que, lors de l\u2019analyse d\u2019interaction \u00e0 deux facteurs, il est pr\u00e9f\u00e9rable d\u2019utiliser le terme \u201cerreur globale\u201d (ou r\u00e9sidus) du r\u00e9sultat d\u2019ANOVA \u00e0 trois facteurs, obtenu pr\u00e9c\u00e9demment en utilisant l\u2019ensemble des donn\u00e9es. Cela est particuli\u00e8rement recommand\u00e9 lorsque l\u2019hypoth\u00e8se d\u2019homog\u00e9n\u00e9it\u00e9 des variances est respect\u00e9e (Keppel et Wickens, 2004).<\/p>\n<p>L\u2019utilisation de l\u2019erreur sp\u00e9cifique au groupe est \u201cplus prudent\u201d contre toute violation des hypoth\u00e8ses. Toutefois, le terme \u201cerreur global\u201d a plus de puissance - en particulier pour les petits \u00e9chantillons - mais sont susceptibles de poser des probl\u00e8mes s\u2019il y a des violations des hypoth\u00e8ses.<\/p>\n<\/div>\n<p>Dans le code R ci-dessous, nous allons regrouper les donn\u00e9es par sexe et calculer l\u2019interaction \u00e0 deux facteurs <code>treatment*risk<\/code>. L\u2019argument <code>error<\/code> est utilis\u00e9 pour sp\u00e9cifier le mod\u00e8le ANOVA \u00e0 trois facteurs \u00e0 partir duquel l\u2019erreur globale et les degr\u00e9s de libert\u00e9 doivent \u00eatre calcul\u00e9s.<\/p>\n<pre class=\"r\"><code># Regrouper les donn\u00e9es selon le sexe et l'\u00e2ge \r\n# calculer l'interaction \u00e0 deux facteurs \r\nmodel  &lt;- lm(pain_score ~ gender*risk*treatment, data = headache)\r\nheadache %&gt;%\r\n  group_by(gender) %&gt;%\r\n  anova_test(pain_score ~ risk*treatment, error = model)<\/code><\/pre>\n<pre><code>## # A tibble: 6 x 8\r\n##   gender Effect           DFn   DFd      F             p `p&lt;.05`   ges\r\n##   &lt;fct&gt;  &lt;chr&gt;          &lt;dbl&gt; &lt;dbl&gt;  &lt;dbl&gt;         &lt;dbl&gt; &lt;chr&gt;   &lt;dbl&gt;\r\n## 1 male   risk               1    60 50.0   0.00000000187 *       0.455\r\n## 2 male   treatment          2    60 10.2   0.000157      *       0.253\r\n## 3 male   risk:treatment     2    60  5.25  0.008         *       0.149\r\n## 4 female risk               1    60 42.8   0.0000000150  *       0.416\r\n## 5 female treatment          2    60  0.482 0.62          \"\"      0.016\r\n## 6 female risk:treatment     2    60  2.87  0.065         \"\"      0.087<\/code><\/pre>\n<div class=\"success\">\n<p>On a observ\u00e9 une interaction statistiquement significative entre le risque et le traitement (<code>risk:treatment<\/code>) chez les hommes, F(2, 60) = 5,25, p = 0,008, mais pas chez les femmes, F(2, 60) = 2,87, p = 0,065.<\/p>\n<p>Pour les hommes, ce r\u00e9sultat sugg\u00e8re que l\u2019effet du traitement sur le \u201cscore_douleur\u201d (<code>pain_score<\/code>) d\u00e9pend de leur \u201crisque\u201d (<code>risk<\/code>) au migraine. En d\u2019autres termes, le risque mod\u00e8re l\u2019effet du type de traitement sur le score de la douleur.<\/p>\n<\/div>\n<div class=\"warning\">\n<p>Il est \u00e0 noter que la significativit\u00e9 statistique d\u2019une interaction simple, \u00e0 deux facteurs, a \u00e9t\u00e9 accept\u00e9e \u00e0 un niveau alpha ajust\u00e9 de Bonferroni de 0,025. Cela correspond au niveau actuel auquel vous d\u00e9clarez une significativit\u00e9 statistique (c.-\u00e0-d. p &lt; 0,05) divis\u00e9 par le nombre d\u2019interactions \u00e0 deux facteurs que vous analys\u00e9es (c.-\u00e0-d. 2).<\/p>\n<\/div>\n<\/div>\n<div id=\"calculer-les-effets-principaux\" class=\"section level4\">\n<h4>Calculer les effets principaux<\/h4>\n<p>Une interaction \u00e0 deux facteurs statistiquement significative peut \u00eatre suivie par une analyse des <strong>effets principaux<\/strong>. Dans notre exemple, vous pourriez donc \u00e9tudier l\u2019effet du <code>traitement<\/code> sur le <code>pain_score<\/code> (score de la douleur) \u00e0 chaque niveau de <code>risk<\/code> (risque) ou \u00e9tudier l\u2019effet du risque \u00e0 chaque niveau de <code>treatment<\/code>.<\/p>\n<div class=\"warning\">\n<p>Vous n\u2019aurez besoin de le faire que pour l\u2019interaction \u00e0 deux facteurs chez les \u201chommes\u201d, car c\u2019\u00e9tait la seule interaction \u00e0 deux facteurs qui \u00e9tait statistiquement significative. Le terme d\u2019erreur provient encore une fois de l\u2019ANOVA \u00e0 trois facteurs.<\/p>\n<\/div>\n<p>Regrouper les donn\u00e9es par \u201csexe\u201d (<code>gender<\/code>) et \u201crisque\u201d (<code>risk<\/code>) et analyser les <strong>effets principaux<\/strong> du traitement sur le \u201cscore_douleur\u201d (<code>pain_score<\/code>):<\/p>\n<pre class=\"r\"><code># Regrouper les donn\u00e9es par sexe et risque, et calculer l'anova\r\ntreatment.effect &lt;- headache %&gt;%\r\n  group_by(gender, risk) %&gt;%\r\n  anova_test(pain_score ~ treatment, error = model)\r\ntreatment.effect %&gt;% filter(gender == \"male\")<\/code><\/pre>\n<pre><code>## # A tibble: 2 x 9\r\n##   gender risk  Effect      DFn   DFd     F         p `p&lt;.05`   ges\r\n##   &lt;fct&gt;  &lt;fct&gt; &lt;chr&gt;     &lt;dbl&gt; &lt;dbl&gt; &lt;dbl&gt;     &lt;dbl&gt; &lt;chr&gt;   &lt;dbl&gt;\r\n## 1 male   high  treatment     2    60 14.8  0.0000061 *       0.33 \r\n## 2 male   low   treatment     2    60  0.66 0.521     \"\"      0.022<\/code><\/pre>\n<div class=\"warning\">\n<p>Dans le tableau ci-dessus, nous n\u2019avons besoin des r\u00e9sultats que pour les effets principaux du traitement pour : (1) \u201chommes\u201d \u00e0 risque \u201cfaible\u201d ; et (2) \u201chommes\u201d \u00e0 risque \u201c\u00e9lev\u00e9.<\/p>\n<p>La significativit\u00e9 statistique a \u00e9t\u00e9 accept\u00e9e \u00e0 un niveau alpha ajust\u00e9 de Bonferroni de 0,025, soit 0,05 divis\u00e9 par le nombre d\u2019effets principaux \u00e9valu\u00e9s (c.-\u00e0-d. 2).<\/p>\n<\/div>\n<div class=\"success\">\n<p>Il y avait un effet principal statistiquement significatif du traitement chez les hommes \u00e0 risque \u00e9lev\u00e9 de migraine, F(2, 60) = 14,8, p &lt; 0,0001), mais pas chez les hommes \u00e0 faible risque de migraine, F(2, 60) = 0,66, p = 0,521.<\/p>\n<p>Cette analyse indique que le type de traitement pris a un effet statistiquement significatif sur le score de la douleur chez les hommes qui sont \u00e0 risque \u00e9lev\u00e9.<\/p>\n<p>En d\u2019autres termes, le score moyen de la douleur dans les groupes de traitement X, Y et Z \u00e9tait statistiquement significativement diff\u00e9rent pour les hommes \u00e0 risque \u00e9lev\u00e9, mais pas pour les hommes \u00e0 faible risque.<\/p>\n<\/div>\n<\/div>\n<div id=\"calculer-les-comparaisons-entre-groupes\" class=\"section level4\">\n<h4>Calculer les comparaisons entre groupes<\/h4>\n<p>Un effet principal statistiquement significatif peut \u00eatre suivi de <strong>multiples comparaisons par paires<\/strong> pour d\u00e9terminer quelles moyennes de groupe sont diff\u00e9rentes. Ceci peut \u00eatre fait facilement en utilisant la fonction <code>emmeans_test()<\/code> [paquet rstatix] d\u00e9crite dans la section pr\u00e9c\u00e9dente.<\/p>\n<p><strong>Comparer les diff\u00e9rents traitements<\/strong> par <code>gender<\/code> (genre) et <code>risk<\/code> (risque):<\/p>\n<pre class=\"r\"><code># Comparaisons par paires\r\nlibrary(emmeans)\r\npwc &lt;- headache %&gt;%\r\n  group_by(gender, risk) %&gt;%\r\n  emmeans_test(pain_score ~ treatment, p.adjust.method = \"bonferroni\") %&gt;%\r\n  select(-df, -statistic, -p) # Supprimer les d\u00e9tails\r\n# Montrer les r\u00e9sultats de la comparaison pour les hommes \u00e0 risque \u00e9lev\u00e9\r\npwc %&gt;% filter(gender == \"male\", risk == \"high\")<\/code><\/pre>\n<pre><code>## # A tibble: 3 x 7\r\n##   gender risk  .y.        group1 group2      p.adj p.adj.signif\r\n##   &lt;fct&gt;  &lt;fct&gt; &lt;chr&gt;      &lt;chr&gt;  &lt;chr&gt;       &lt;dbl&gt; &lt;chr&gt;       \r\n## 1 male   high  pain_score X      Y      0.000386   ***         \r\n## 2 male   high  pain_score X      Z      0.00000942 ****        \r\n## 3 male   high  pain_score Y      Z      0.897      ns<\/code><\/pre>\n<pre class=\"r\"><code># Moyennes marginales estim\u00e9es (c.-\u00e0-d. moyenne ajust\u00e9e) \r\n# avec un intervalle de confiance \u00e0 95%\r\nget_emmeans(pwc) %&gt;% filter(gender == \"male\", risk == \"high\")<\/code><\/pre>\n<pre><code>## # A tibble: 3 x 9\r\n##   gender risk  treatment emmean    se    df conf.low conf.high method      \r\n##   &lt;fct&gt;  &lt;fct&gt; &lt;fct&gt;      &lt;dbl&gt; &lt;dbl&gt; &lt;dbl&gt;    &lt;dbl&gt;     &lt;dbl&gt; &lt;chr&gt;       \r\n## 1 male   high  X           92.7  1.80    60     89.1      96.3 Emmeans test\r\n## 2 male   high  Y           82.3  1.80    60     78.7      85.9 Emmeans test\r\n## 3 male   high  Z           79.7  1.80    60     76.1      83.3 Emmeans test<\/code><\/pre>\n<p>Dans le tableau de comparaisons par paires ci-dessus, nous ne nous int\u00e9ressons qu\u2019aux comparaisons simples pour les hommes \u00e0 risque \u00e9lev\u00e9 de migraines. Dans notre exemple, il existe trois combinaisons possibles de diff\u00e9rences de groupe.<\/p>\n<div class=\"success\">\n<p>Chez les hommes \u00e0 risque \u00e9lev\u00e9, la diff\u00e9rence moyenne statistiquement significative entre le traitement X et le traitement Y \u00e9tait de 10,4 (p.adj &lt; 0,001), et de 13,1 (p.adj &lt; 0,0001) entre le traitement X et le traitement Z.<\/p>\n<p>Cependant, la diff\u00e9rence entre le traitement Y et le traitement Z (2,66) n\u2019\u00e9tait pas statistiquement significative, p.adj = 0,897.<\/p>\n<\/div>\n<\/div>\n<div id=\"rapporter-2\" class=\"section level4\">\n<h4>Rapporter<\/h4>\n<p>Une ANOVA \u00e0 trois facteurs a \u00e9t\u00e9 men\u00e9e pour d\u00e9terminer les effets du sexe, du risque et du traitement sur les \u00e9pisodes migraineux <code>pain_score<\/code>.<\/p>\n<p>L\u2019analyse des r\u00e9sidus a \u00e9t\u00e9 effectu\u00e9e pour v\u00e9rifier les hypoth\u00e8ses de l\u2019ANOVA \u00e0 trois facteurs. La normalit\u00e9 a \u00e9t\u00e9 \u00e9valu\u00e9e \u00e0 l\u2019aide du test de normalit\u00e9 de Shapiro-Wilk et l\u2019homog\u00e9n\u00e9it\u00e9 des variances a \u00e9t\u00e9 \u00e9valu\u00e9e par le test de Levene.<\/p>\n<p>Les r\u00e9sidus \u00e9taient normalement distribu\u00e9s (p &gt; 0,05) et les variances \u00e9taient homog\u00e8nes (p &gt; 0,05).<\/p>\n<p>Il y avait une interaction, \u00e0 trois facteurs, statistiquement significative entre le sexe, le risque et le traitement, <code>F(2, 60) = 7.41, p = 0.001<\/code>.<\/p>\n<p>La significativit\u00e9 statistique a \u00e9t\u00e9 accept\u00e9e au niveau p &lt; 0,025 pour les interactions \u00e0 deux facteurs et les effets principaux. Il y avait une interaction statistiquement significative entre le risque et le traitement chez les hommes, F(2, 60) = 5,2, p = 0,008, mais pas chez les femmes, F(2, 60) = 2,8, p = 0,065.<\/p>\n<p>Il y avait un effet principal statistiquement significatif du traitement chez les hommes \u00e0 risque \u00e9lev\u00e9 de migraine, F(2, 60) = 14,8, p &lt; 0,0001), mais pas chez les hommes \u00e0 faible risque de migraine, F(2, 60) = 0,66, p = 0,521.<\/p>\n<p>Toutes les comparaisons par paires, entre les diff\u00e9rents groupes de traitement, ont \u00e9t\u00e9 effectu\u00e9es pour les hommes pr\u00e9sentant un risque \u00e9lev\u00e9 de migraine avec un ajustement de Bonferroni.<\/p>\n<p>Il y avait une diff\u00e9rence moyenne statistiquement significative entre le traitement X et le traitement Y. Cependant, la diff\u00e9rence entre le traitement Y et le traitement Z n\u2019\u00e9tait pas statistiquement significative.<\/p>\n<pre class=\"r\"><code># Visualisation : Boxplots avec p-values\r\npwc &lt;- pwc %&gt;% add_xy_position(x = \"treatment\")\r\npwc.filtered &lt;- pwc %&gt;% filter(gender == \"male\", risk == \"high\")\r\nbxp +\r\n  stat_pvalue_manual(\r\n    pwc.filtered, color = \"risk\", linetype = \"risk\", hide.ns = TRUE,\r\n    tip.length = 0, step.increase = 0.1, step.group.by = \"gender\"\r\n  ) +\r\n  labs(\r\n    subtitle = get_test_label(res.aov, detailed = TRUE),\r\n    caption = get_pwc_label(pwc)\r\n    )<\/code><\/pre>\n<p><img decoding=\"async\" src=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/dn-tutorials\/r-statistics-2-comparing-groups-means\/figures\/045-anova-analysis-of-variance-three-way-anova-box-plots-with-p-values-1.png\" width=\"576\" \/><\/p>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"resume\" class=\"section level2\">\n<h2>R\u00e9sum\u00e9<\/h2>\n<p>Cet article d\u00e9crit comment calculer et interpr\u00e9ter l\u2019ANOVA dans R. Nous expliquons \u00e9galement les hypoth\u00e8ses faites par les tests ANOVA et fournissons des exemples pratiques de codes R pour v\u00e9rifier si les hypoth\u00e8ses des tests sont respect\u00e9es.<\/p>\n<\/div>\n<\/div>\n<p><!--end rdoc--><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le test ANOVA (ou Analyse de variance) est utilis\u00e9 pour comparer la moyenne de plusieurs groupes. Ce chapitre d\u00e9crit les diff\u00e9rents types d&rsquo;ANOVA pour comparer les groupes ind\u00e9pendants, notamment : <\/p>\n<p>1) ANOVA \u00e0 un facteur : une extension du test sur \u00e9chantillons ind\u00e9pendants pour comparer les moyennes dans une situation o\u00f9 il y a plus de deux groupes.<br \/>\n2) ANOVA \u00e0 deux facteurs utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l&rsquo;effet de deux variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue.<br \/>\n3) ANOVA \u00e0 trois facteur utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l&rsquo;effet de trois variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue. <\/p>\n","protected":false},"author":1,"featured_media":11063,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","class_list":["post-11062","dt_lessons","type-dt_lessons","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>ANOVA dans R: Excellente R\u00e9f\u00e9rence - Datanovia<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ANOVA dans R: Excellente R\u00e9f\u00e9rence - Datanovia\" \/>\n<meta property=\"og:description\" content=\"Le test ANOVA (ou Analyse de variance) est utilis\u00e9 pour comparer la moyenne de plusieurs groupes. Ce chapitre d\u00e9crit les diff\u00e9rents types d&#039;ANOVA pour comparer les groupes ind\u00e9pendants, notamment :    1) ANOVA \u00e0 un facteur : une extension du test sur \u00e9chantillons ind\u00e9pendants pour comparer les moyennes dans une situation o\u00f9 il y a plus de deux groupes.  2) ANOVA \u00e0 deux facteurs utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l&#039;effet de deux variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue.  3) ANOVA \u00e0 trois facteur utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l&#039;effet de trois variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/\" \/>\n<meta property=\"og:site_name\" content=\"Datanovia\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"512\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"39 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/\",\"url\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/\",\"name\":\"ANOVA dans R: Excellente R\u00e9f\u00e9rence - Datanovia\",\"isPartOf\":{\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg\",\"datePublished\":\"2019-12-07T23:15:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#primaryimage\",\"url\":\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg\",\"contentUrl\":\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg\",\"width\":1024,\"height\":512},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.datanovia.com\/en\/fr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Le\u00e7ons\",\"item\":\"https:\/\/www.datanovia.com\/en\/fr\/lessons\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"ANOVA dans R\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/#website\",\"url\":\"https:\/\/www.datanovia.com\/en\/fr\/\",\"name\":\"Datanovia\",\"description\":\"Exploration de Donn\u00e9es et Statistiques pour l'Aide \u00e0 la D\u00e9cision\",\"publisher\":{\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.datanovia.com\/en\/fr\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/#organization\",\"name\":\"Datanovia\",\"url\":\"https:\/\/www.datanovia.com\/en\/fr\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2018\/09\/datanovia-logo.png\",\"contentUrl\":\"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2018\/09\/datanovia-logo.png\",\"width\":98,\"height\":99,\"caption\":\"Datanovia\"},\"image\":{\"@id\":\"https:\/\/www.datanovia.com\/en\/fr\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ANOVA dans R: Excellente R\u00e9f\u00e9rence - Datanovia","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/","og_locale":"fr_FR","og_type":"article","og_title":"ANOVA dans R: Excellente R\u00e9f\u00e9rence - Datanovia","og_description":"Le test ANOVA (ou Analyse de variance) est utilis\u00e9 pour comparer la moyenne de plusieurs groupes. Ce chapitre d\u00e9crit les diff\u00e9rents types d'ANOVA pour comparer les groupes ind\u00e9pendants, notamment :    1) ANOVA \u00e0 un facteur : une extension du test sur \u00e9chantillons ind\u00e9pendants pour comparer les moyennes dans une situation o\u00f9 il y a plus de deux groupes.  2) ANOVA \u00e0 deux facteurs utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l'effet de deux variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue.  3) ANOVA \u00e0 trois facteur utilis\u00e9e pour \u00e9valuer simultan\u00e9ment l'effet de trois variables de groupement diff\u00e9rentes sur une variable-r\u00e9ponse continue.","og_url":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/","og_site_name":"Datanovia","og_image":[{"width":1024,"height":512,"url":"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"39 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/","url":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/","name":"ANOVA dans R: Excellente R\u00e9f\u00e9rence - Datanovia","isPartOf":{"@id":"https:\/\/www.datanovia.com\/en\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#primaryimage"},"image":{"@id":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#primaryimage"},"thumbnailUrl":"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg","datePublished":"2019-12-07T23:15:15+00:00","breadcrumb":{"@id":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#primaryimage","url":"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg","contentUrl":"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2019\/05\/X36639381_658465867826694_2093538575294398464_n.jpg","width":1024,"height":512},{"@type":"BreadcrumbList","@id":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/anova-dans-r\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.datanovia.com\/en\/fr\/"},{"@type":"ListItem","position":2,"name":"Le\u00e7ons","item":"https:\/\/www.datanovia.com\/en\/fr\/lessons\/"},{"@type":"ListItem","position":3,"name":"ANOVA dans R"}]},{"@type":"WebSite","@id":"https:\/\/www.datanovia.com\/en\/fr\/#website","url":"https:\/\/www.datanovia.com\/en\/fr\/","name":"Datanovia","description":"Exploration de Donn\u00e9es et Statistiques pour l'Aide \u00e0 la D\u00e9cision","publisher":{"@id":"https:\/\/www.datanovia.com\/en\/fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.datanovia.com\/en\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/www.datanovia.com\/en\/fr\/#organization","name":"Datanovia","url":"https:\/\/www.datanovia.com\/en\/fr\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.datanovia.com\/en\/fr\/#\/schema\/logo\/image\/","url":"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2018\/09\/datanovia-logo.png","contentUrl":"https:\/\/www.datanovia.com\/en\/wp-content\/uploads\/2018\/09\/datanovia-logo.png","width":98,"height":99,"caption":"Datanovia"},"image":{"@id":"https:\/\/www.datanovia.com\/en\/fr\/#\/schema\/logo\/image\/"}}]}},"multi-rating":{"mr_rating_results":[]},"_links":{"self":[{"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/dt_lessons\/11062","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/dt_lessons"}],"about":[{"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/types\/dt_lessons"}],"author":[{"embeddable":true,"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/comments?post=11062"}],"version-history":[{"count":0,"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/dt_lessons\/11062\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/media\/11063"}],"wp:attachment":[{"href":"https:\/\/www.datanovia.com\/en\/fr\/wp-json\/wp\/v2\/media?parent=11062"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}