Ciencia de datos : matriz de correlación estadística


Matriz de correlación

Una matriz es un conjunto de números dispuestos en filas y columnas.

Una matriz de correlación es simplemente una tabla que muestra los coeficientes de correlación entre variables.

Aquí, las variables se representan en la primera fila y en la primera columna:

Matriz de correlación

La tabla anterior ha utilizado datos del conjunto completo de datos de salud.

Observaciones:

  • Observamos que Duration y Calorie_Burnage están estrechamente relacionados, con un coeficiente de correlación de 0,89. Esto tiene sentido ya que cuanto más tiempo entrenamos, más calorías quemamos
  • Observamos que casi no hay relaciones lineales entre Average_Pulse y Calorie_Burnage (coeficiente de correlación de 0.02)
  • ¿Podemos concluir que Average_Pulse no afecta Calorie_Burnage? No. ¡Volveremos a responder esta pregunta más tarde!

Matriz de correlación en Python

Podemos usar la corr()función en Python para crear una matriz de correlación. También usamos la round()función para redondear la salida a dos decimales:

Ejemplo

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

Producción:

Matriz de correlación

Usar un mapa de calor

Podemos usar un mapa de calor para visualizar la correlación entre variables:

Mapa de calor de correlación

Cuanto más cerca esté el coeficiente de correlación de 1, más verdes se volverán los cuadrados.

Cuanto más cerca esté el coeficiente de correlación de -1, más marrones se vuelven los cuadrados.


Use Seaborn para crear un mapa de calor

Podemos usar la biblioteca Seaborn para crear un mapa de calor de correlación (Seaborn es una biblioteca de visualización basada en matplotlib):

Ejemplo

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()

Ejemplo explicado:

  • Importe la biblioteca seaborn como sns.
  • Utilice el conjunto full_health_data.
  • Use sns.heatmap() para decirle a Python que queremos un mapa de calor para visualizar la matriz de correlación.
  • Utilice la matriz de correlación. Defina los valores máximos y mínimos del mapa de calor. Defina que 0 es el centro.
  • Defina los colores con sns.diverging_palette. n=500 significa que queremos 500 tipos de color en la misma paleta de colores.
  • square = True significa que queremos ver cuadrados.