5.11. Análisis exploratorio de datos con Matplotlib y Seaborn: análisis de correlación y mapa de calor

El análisis exploratorio de datos (AED) es un paso fundamental en el proceso de aprendizaje automático y aprendizaje profundo, ya que permite a los científicos de datos comprender mejor la estructura, los patrones y las relaciones que existen en los datos. Una de las herramientas más poderosas de AED es el análisis de correlación, que se puede visualizar de manera efectiva a través de mapas de calor. En este capítulo, exploraremos cómo realizar análisis de correlación y crear mapas de calor utilizando las bibliotecas Matplotlib y Seaborn en Python.

Comprensión de la correlación

La correlación mide la relación lineal entre dos variables cuantitativas. El coeficiente de correlación, normalmente indicado por 'r', varía entre -1 y 1, donde 1 indica una correlación positiva perfecta, -1 indica una correlación negativa perfecta y 0 indica que no hay correlación lineal. En términos prácticos, una correlación alta (positiva o negativa) sugiere que cuando una variable aumenta, la otra también aumenta (correlación positiva) o disminuye (correlación negativa).

Cálculo de correlación con pandas

Antes de ver la correlación, debemos calcularla. Pandas, una biblioteca de manipulación de datos en Python, ofrece la función .corr() para calcular la matriz de correlación de un DataFrame. La matriz de correlación es una tabla donde cada celda en la posición (i, j) representa la correlación entre la iésima y jésima variable en el conjunto de datos.

importar pandas como pd

# Cargar el conjunto de datos
df = pd.read_csv('tu_conjunto de datos.csv')

# Calcular la matriz de correlación
correlación_matriz = df.corr()

Visualización de la correlación con Matplotlib y Seaborn

Aunque Pandas proporciona la matriz de correlación, interpretarla numéricamente puede ser un desafío, especialmente cuando se trata de muchas variables. Ahí es donde entran las visualizaciones. Matplotlib es una biblioteca de trazado de bajo nivel en Python que ofrece una gran flexibilidad, mientras que Seaborn está construido sobre Matplotlib y proporciona una interfaz de alto nivel para dibujar trazados estadísticos más atractivos e informativos.

Creación de un mapa de calor con Seaborn

Un mapa de calor es una representación gráfica de datos donde los valores individuales contenidos en una matriz se representan como colores. Es particularmente útil para visualizar la matriz de correlación, ya que los colores pueden ayudar a resaltar patrones de correlación entre variables. Para crear un mapa de calor, podemos usar la función heatmap() de Seaborn.

importar seaborn como sns
importar matplotlib.pyplot como plt

# Configurar el estilo Seaborn
sns.set_theme(estilo='blanco')

# Crea el mapa de calor
plt.figura(tamaño de figura=(10, 8))
sns.heatmap(matriz_correlacao, annot=True, fmt='.2f', cmap='coolwarm', cuadrado=True)

# Mostrar el gráfico
plt.mostrar()

El código anterior configura el tema Seaborn, crea una figura con un tamaño específico, dibuja un mapa de calor de la matriz de correlación con anotaciones numéricas formateadas con dos decimales, utiliza el mapa de colores 'coolwarm' que es bueno para resaltar correlaciones positivas y negativas. y finalmente muestra el gráfico.

Interpretación del mapa de calor

Al interpretar el mapa de calor, es importante prestar atención a los colores y los valores anotados. Los colores más cálidos (como el rojo) indican fuertes correlaciones positivas, mientras que los colores más fríos (como el azul) indican fuertes correlaciones negativas. Los colores cercanos al blanco o al gris indican correlaciones débiles o inexistentes.

Ajustes finales al mapa de calor

Aunque el mapa de calor básico ya puede proporcionar mucha información, es posible que deseemos realizar ajustes para mejorar la interpretación. Por ejemplo, es posible que queramos agregar un título, ajustar las etiquetas de los ejes o cambiar el mapa de colores. Seaborn y Matplotlib permiten estas personalizaciones con facilidad.

# Crea el mapa de calor con ajustes adicionales
plt.figura(tamaño de figura=(12, 10))
mapa de calor = sns.heatmap(matriz_correlacao, annot=True, fmt='.2f', cmap='coolwarm', cuadrado=True)

# Agregar título y ajustar fuente
heatmap.set_title('Mapa de calor de correlación', fontdict={'fontsize':18}, pad=12)

# Ajustar las etiquetas de los ejes
plt.xticks(rotación=45, ha='derecha')
plt.yticks(rotación=0)

# Mostrar el gráfico
plt.mostrar()

Este código agrega un título al mapa de calor, ajusta el tamaño y el espaciado de la fuente y rota las etiquetas de los ejes para facilitar la lectura.

Consideraciones finales

El análisis de correlación y la visualización a través de mapas de calor son herramientas poderosas en AED, que brindan información rápida sobre cómo se relacionan entre sí las variables del conjunto de datos. En el contexto del aprendizaje automático y el aprendizaje profundo, comprender estas relaciones es crucial para la selección de funciones, la ingeniería de funciones y la construcción de modelos más eficientes. Dominando el uso de Matplotlib y SeabornPara crear mapas de calor, los científicos de datos pueden comunicar sus hallazgos de forma clara y eficaz.

Es importante tener en cuenta que la correlación no implica causalidad. Una alta correlación entre dos variables no significa que una cause la otra. Por lo tanto, el análisis de correlación debe complementarse con conocimiento del dominio y otras técnicas estadísticas para establecer relaciones causales.

En resumen, el análisis exploratorio de datos con Matplotlib y Seaborn es una habilidad esencial para cualquiera que trabaje con aprendizaje automático y aprendizaje profundo en Python. La capacidad de visualizar e interpretar de manera eficiente las relaciones entre variables puede generar información valiosa y mejorar significativamente la calidad de los modelos predictivos.

Ahora responde el ejercicio sobre el contenido:

¿Cuál de las siguientes afirmaciones es cierta sobre el análisis de correlación y la creación de mapas de calor como se describe en el texto anterior?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Imagen del artículo Análisis exploratorio de datos con Matplotlib y Seaborn: uso de diagramas de pares para visualizar relaciones en múltiples dimensiones 17

Siguiente página del libro electrónico gratuito:

Análisis exploratorio de datos con Matplotlib y Seaborn: uso de diagramas de pares para visualizar relaciones en múltiples dimensiones

Tiempo estimado de lectura: 4 minutos

Descarga la aplicación para obtener una certificación gratuita y escuchar cursos en segundo plano, incluso con la pantalla apagada.
  • ¡Lee este curso en la aplicación para obtener tu Certificado Digital!
  • Escucha este curso en la aplicación sin tener que encender la pantalla de tu celular;
  • Obtenga acceso 100% gratuito a más de 4000 cursos en línea, libros electrónicos y audiolibros;
  • + Cientos de ejercicios + Historias educativas.

+ 9 millones
estudiantes

Certificado gratuito y
válido con código QR

60 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo y audiolibros