Comment calculer la corrélation par groupe dans R
Vous pouvez utiliser la syntaxe de base suivante pour calculer la corrélation entre deux variables par groupe dans R :
library(dplyr)
df %>%
group_by(group_var) %>%
summarize(cor=cor(var1, var2))
Cette syntaxe particulière calcule la corrélation entre var1 et var2 , regroupées par group_var .
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : calculer la corrélation par groupe dans R
Supposons que nous disposions du bloc de données suivant contenant des informations sur les joueurs de basket-ball de différentes équipes :
#create data frame
df <- data.frame(team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
points=c(18, 22, 19, 14, 14, 11, 20, 28),
assists=c(2, 7, 9, 3, 12, 10, 14, 21))
#view data frame
df
team points assists
1 A 18 2
2 A 22 7
3 A 19 9
4 A 14 3
5 B 14 12
6 B 11 10
7 B 20 14
8 B 28 21
Nous pouvons utiliser la syntaxe suivante du package dplyr pour calculer la corrélation entre les points et les passes décisives , regroupés par équipe :
library(dplyr)
df %>%
group_by(team) %>%
summarize(cor=cor(points, assists))
# A tibble: 2 x 2
team cor
1 A 0.603
2 B 0.982
À partir du résultat, nous pouvons voir :
- Le coefficient de corrélation entre les points et les passes décisives pour l’équipe A est de 0,603 .
- Le coefficient de corrélation entre les points et les passes décisives pour l’équipe B est de 0,982 .
Puisque les deux coefficients de corrélation sont positifs, cela nous indique que la relation entre les points et les passes décisives pour les deux équipes est positive.
Connexes :Qu’est-ce qui est considéré comme une corrélation « forte » ?
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans R :
Comment compter les valeurs uniques par groupe dans R
Comment calculer la somme par groupe dans R
Comment calculer la moyenne par groupe dans R
Comment calculer des statistiques récapitulatives par groupe dans R