Science des données - Matrice de corrélation des statistiques


Matrice de corrélation

Une matrice est un tableau de nombres disposés en lignes et en colonnes.

Une matrice de corrélation est simplement un tableau montrant les coefficients de corrélation entre les variables.

Ici, les variables sont représentées dans la première ligne, et dans la première colonne :

Matrice de corrélation

Le tableau ci-dessus a utilisé les données de l'ensemble complet de données sur la santé.

Observations :

  • Nous observons que Durée et Calorie_Burnage sont étroitement liés, avec un coefficient de corrélation de 0,89. Cela a du sens car plus nous nous entraînons longtemps, plus nous brûlons de calories
  • Nous observons qu'il n'y a presque pas de relations linéaires entre Average_Pulse et Calorie_Burnage (coefficient de corrélation de 0,02)
  • Pouvons-nous conclure que Average_Pulse n'affecte pas Calorie_Burnage ? Non. Nous reviendrons pour répondre à cette question plus tard !

Matrice de corrélation en Python

Nous pouvons utiliser la corr()fonction en Python pour créer une matrice de corrélation. Nous utilisons également la round()fonction pour arrondir la sortie à deux décimales :

Exemple

Corr_Matrix = round(full_health_data.corr(),2)
print(Corr_Matrix)

Sortir:

Matrice de corrélation

Utiliser une carte thermique

Nous pouvons utiliser une Heatmap pour visualiser la corrélation entre les variables :

Carte thermique de corrélation

Plus le coefficient de corrélation est proche de 1, plus les carrés deviennent verts.

Plus le coefficient de corrélation est proche de -1, plus les carrés deviennent bruns.


Utiliser Seaborn pour créer une carte thermique

Nous pouvons utiliser la bibliothèque Seaborn pour créer une carte thermique de corrélation (Seaborn est une bibliothèque de visualisation basée sur matplotlib) :

Exemple

import matplotlib.pyplot as plt
import seaborn as sns

correlation_full_health = full_health_data.corr()

axis_corr = sns.heatmap(
correlation_full_health,
vmin=-1, vmax=1, center=0,
cmap=sns.diverging_palette(50, 500, n=500),
square=True
)

plt.show()

Exemple expliqué :

  • Importez la bibliothèque seaborn en tant que sns.
  • Utilisez l'ensemble de données full_health_data.
  • Utilisez sns.heatmap() pour dire à Python que nous voulons qu'une carte thermique visualise la matrice de corrélation.
  • Utilisez la matrice de corrélation. Définissez les valeurs maximales et minimales de la heatmap. Définir que 0 est le centre.
  • Définissez les couleurs avec sns.diverging_palette. n=500 signifie que nous voulons 500 types de couleurs dans la même palette de couleurs.
  • square = True signifie que nous voulons voir des carrés.