Comment utiliser cor() pour calculer les coefficients de corrélation dans R



Vous pouvez utiliser la fonction cor() dans R pour calculer les coefficients de corrélation entre les variables.

Voici les manières les plus courantes d’utiliser cette fonction :

Méthode 1 : calculer le coefficient de corrélation de Pearson entre deux variables

cor(df$x, df$y)

Utilisez le coefficient de corrélation de Pearson lors du calcul de la corrélation entre deux variables continues. (par exemple taille et poids)

Méthode 2 : calculer le coefficient de corrélation de Pearson entre toutes les variables numériques de la trame de données

cor(df)

Cette méthode renverra une matrice de corrélation contenant le coefficient de corrélation de Pearson entre chaque combinaison par paire de variables numériques dans une trame de données.

Méthode 3 : calculer le coefficient de corrélation de Spearman entre deux variables

cor(df$x, df$y, method='spearman')

Utilisez le coefficient de corrélation de Spearman lors du calcul de la corrélation entre deux variables classées. (par exemple, classement de la note à l’examen de mathématiques d’un élève par rapport au classement de sa note à l’examen de sciences dans une classe)

Méthode 4 : calculer le coefficient de corrélation de Kendall entre deux variables

cor(df$x, df$y, method='kendall')

Utilisez le coefficient de corrélation de Kendall lorsque vous souhaitez utiliser la corrélation de Spearman mais que la taille de l’échantillon est petite et qu’il existe de nombreux classements ex æquo.

Les exemples suivants montrent comment utiliser chaque méthode dans la pratique avec le bloc de données suivant dans R qui montre le nombre d’heures passées à étudier, le nombre d’examens pratiques passés et la note de l’examen final pour huit étudiants différents :

#create data frame
df <- data.frame(hours=c(1, 1, 3, 2, 4, 3, 5, 6),
                 prac_exams=c(4, 3, 3, 2, 3, 2, 1, 4),
                 score=c(69, 74, 74, 70, 89, 85, 99, 90))

#view data frame
df

  hours prac_exams score
1     1          4    69
2     1          3    74
3     3          3    74
4     2          2    70
5     4          3    89
6     3          2    85
7     5          1    99
8     6          4    90

Exemple 1 : Calculer le coefficient de corrélation de Pearson entre deux variables

Le code suivant montre comment utiliser la fonction cor() pour calculer le coefficient de corrélation de Pearson entre les variables d’heures et de score :

#calculate Pearson correlation coefficient between hours and score
cor(df$hours, df$score)

[1] 0.8600528

Le coefficient de corrélation de Pearson entre les heures et le score s’avère être de 0,86.

Notez que s’il y a des valeurs NA dans votre bloc de données, vous pouvez utiliser l’argument use=’complete.obs’ pour utiliser uniquement les lignes où il n’y a pas de valeurs NA :

#calculate Pearson correlation coefficient and ignore any rows with NA
cor(df$hours, df$score, use='complete.obs')

Exemple 2 : Calculer le coefficient de corrélation de Pearson entre toutes les variables numériques

Le code suivant montre comment utiliser la fonction cor() pour créer une matrice de corrélation contenant le coefficient de corrélation de Pearson entre toutes les variables numériques du bloc de données :

#calculate Pearson correlation coefficient between all numeric variables
cor(df)

                hours prac_exams      score
hours       1.0000000 -0.1336063  0.8600528
prac_exams -0.1336063  1.0000000 -0.3951028
score       0.8600528 -0.3951028  1.0000000

Voici comment interpréter le résultat :

  • Le coefficient de corrélation de Pearson entre les heures et les prac_exams est de -0,13 .
  • Le coefficient de corrélation de Pearson entre les heures et le score est de 0,86 .
  • Le coefficient de corrélation de Pearson entre prac_exams et le score est de -0,39 .

Remarque : Le coefficient de corrélation de Pearson entre chaque variable individuelle et elle-même est toujours 1, c’est pourquoi chaque valeur le long de la diagonale de la matrice de corrélation est 1.

Exemple 3 : Calculer le coefficient de corrélation de Spearman entre deux variables

Le code suivant montre comment utiliser la fonction cor() pour calculer le coefficient de corrélation de Spearman entre les variables hours et prac_exams :

#calculate Spearman correlation coefficient between hours and prac_exams
cor(df$hours, df$prac_exams, method='spearman')

[1] -0.1250391

Le coefficient de corrélation de Spearman entre les heures et les prac_exams s’avère être de -0,125.

Exemple 4 : Calculer le coefficient de corrélation de Kendall entre deux variables

Le code suivant montre comment utiliser la fonction cor() pour calculer le coefficient de corrélation de Kendall entre les variables hours et prac_exams :

#calculate Kendall's correlation coefficient between hours and prac_exams
cor(df$hours, df$prac_exams, method='kendall')

[1] -0.1226791

Le coefficient de corrélation de Kendall entre les heures et les prac_exams s’avère être de -0,123.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment calculer la corrélation glissante dans R
Comment calculer l’autocorrélation dans R
Comment calculer la corrélation partielle dans R

Ajouter un commentaire

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