Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment effectuer le test de Friedman dans R



Le test de Friedman est une alternative non paramétrique à l’ANOVA à mesures répétées. Il est utilisé pour déterminer s’il existe ou non une différence statistiquement significative entre les moyennes de trois groupes ou plus dans lesquels les mêmes sujets apparaissent dans chaque groupe.

Ce tutoriel explique comment effectuer le test de Friedman dans R.

Exemple : le test de Friedman dans R

Pour effectuer le test de Friedman dans R, nous pouvons utiliser la fonction friedman.test() , qui utilise la syntaxe suivante :

friedman.test (y, groupes, blocs)

où:

  • y : un vecteur de valeurs de réponse.
  • groupes : un vecteur de valeurs indiquant le « groupe » auquel appartient une observation.
  • blocs : un vecteur de valeurs indiquant la variable « bloquante ».

Cette fonction produit une statistique de test du Chi carré et une valeur p correspondante. Si la valeur p est inférieure à un certain niveau de signification (les choix courants sont 0,10, 0,05 et 0,01), alors il existe suffisamment de preuves que les moyennes entre chacun des groupes ne sont pas égales.

Pour illustrer comment utiliser cette fonction, nous allons créer un ensemble de données qui montre le temps de réaction de cinq patients sur quatre médicaments différents. Puisque chaque patient est mesuré sur chacun des quatre médicaments, nous utiliserons le test de Friedman pour déterminer si le temps de réaction moyen diffère entre les médicaments.

Tout d’abord, nous allons créer l’ensemble de données :

#create data
data <- data.frame(person = rep(1:5, each=4),
                   drug = rep(c(1, 2, 3, 4), times=5),
                   score = c(30, 28, 16, 34, 14, 18, 10, 22, 24, 20,
                             18, 30, 38, 34, 20, 44, 26, 28, 14, 30))

#view data
data

   person drug score
1       1    1    30
2       1    2    28
3       1    3    16
4       1    4    34
5       2    1    14
6       2    2    18
7       2    3    10
8       2    4    22
9       3    1    24
10      3    2    20
11      3    3    18
12      3    4    30
13      4    1    38
14      4    2    34
15      4    3    20
16      4    4    44
17      5    1    26
18      5    2    28
19      5    3    14
20      5    4    30

Ensuite, nous effectuerons le test de Friedman en utilisant le score comme variable de réponse, le médicament comme variable de regroupement et la personne comme variable de blocage :

#perform Friedman Test
friedman.test(y=data$score, groups=data$drug, blocks=data$person)

	Friedman rank sum test

data:  data$score, data$drug and data$person
Friedman chi-squared = 13.56, df = 3, p-value = 0.00357

La statistique du test du Chi carré est de 13,56 et la valeur p correspondante est de 0,00357 . Cette valeur p étant inférieure à 0,05, nous pouvons rejeter l’hypothèse nulle selon laquelle le temps de réponse moyen est le même pour les quatre médicaments. Nous disposons de suffisamment de preuves pour conclure que le type de médicament utilisé entraîne des différences statistiquement significatives dans le temps de réponse.

Bien qu’un test de Friedman nous indique s’il existe des différences dans les temps de réponse moyens entre les médicaments, il ne nous indique pas spécifiquement quels médicaments ont des temps de réponse moyens différents. Pour le comprendre, nous devons effectuer des tests post-hoc.

Pour un test de Friedman, le test post-hoc approprié est le test de somme des rangs de Wilcoxon par paire avec une correction de Bonferroni, qui peut être implémenté en utilisant la syntaxe suivante :

pairwise.wilcox.test(data$score, data$drug, p.adj = « bonf »)

où:

  • x : vecteur de réponse
  • g : vecteur de regroupement
  • p.adj : méthode d’ajustement des valeurs p ; les options incluent holm, hochberg, hommel, bonferroni, BH, BY, fdr et aucun

Voici la syntaxe que nous utiliserons pour notre exemple :

#perform post-hoc tests
pairwise.wilcox.test(data$score, data$drug, p.adj = "bonf")
	Pairwise comparisons using Wilcoxon rank sum test 

data:  data$score and data$drug 

  1     2     3    
2 1.000 -     -    
3 0.449 0.210 -    
4 1.000 1.000 0.072

P value adjustment method: bonferroni 

Cela produit une matrice qui montre la valeur p pour chaque test de somme des rangs de Wilcoxon par paire. Nous pouvons voir que les seuls groupes de médicaments qui présentent une différence statistiquement significative à 0,10 sont les groupes 3 et 4 ( p = 0,072 ).

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *