5.6. Análisis exploratorio de datos con Matplotlib y Seaborn: visualización de datos categóricos
El análisis exploratorio de datos (EDA) es un paso crucial en el ciclo de vida de los proyectos de aprendizaje automático y aprendizaje profundo. Permite a los científicos de datos comprender mejor los patrones, relaciones y anomalías presentes en los datos. La visualización de datos es una herramienta poderosa en EDA y bibliotecas como Matplotlib y Seaborn son esenciales para crear representaciones gráficas que faciliten la interpretación de los datos.
Visualización de datos categóricos
Los datos categóricos son variables que contienen etiquetas en lugar de valores numéricos. Visualizar estos datos es esencial para comprender la distribución y la relación entre las diferentes categorías. Matplotlib y Seaborn ofrecen varias opciones para visualizar datos categóricos de forma eficaz.
Gráficos de barras
El gráfico de barras es una de las visualizaciones más comunes para datos categóricos. Muestra la frecuencia o proporción de cada categoría, facilitando su comparación. En Matplotlib, puede crear un gráfico de barras usando la función bar()
, mientras que en Seaborn, la función countplot()
es una forma práctica de crear gráficos de barras que muestran el recuento de observaciones en cada categoría.
importar matplotlib.pyplot como plt importar seaborn como sns # Ejemplo de datos categóricos categorías = ['Categoría A', 'Categoría B', 'Categoría C'] valores = [10, 20, 30] # Gráfico de barras con Matplotlib plt.bar(categorías, valores) plt.title('Gráfico de barras con Matplotlib') plt.xlabel('Categorías') plt.ylabel('Valores') plt.mostrar() # Gráfico de barras con Seaborn sns.countplot(x='categoría', datos=df) plt.title('Gráfico de barras con Seaborn') plt.xlabel('Categorías') plt.ylabel('Contar') plt.mostrar()
Gráficos de caja
Los diagramas de caja son excelentes para visualizar la distribución de datos numéricos agrupados por categorías. Muestran la mediana, los cuartiles y los valores atípicos, lo que proporciona una comprensión rápida de la variabilidad de los datos. En Matplotlib, puede utilizar la función boxplot()
y en Seaborn, la función boxplot()
también está disponible con funciones adicionales.
# Diagrama de caja con Matplotlib plt.boxplot([categoría_datos_A, categoría_datos_B, categoría_datos_C]) plt.title('Boxplot con Matplotlib') plt.xlabel('Categorías') plt.ylabel('Valores') plt.xticks([1, 2, 3], categorías) plt.mostrar() # Diagrama de caja con Seaborn sns.boxplot(x='categoría', y='valor', datos=df) plt.title('Gráfico de caja con Seaborn') plt.xlabel('Categorías') plt.ylabel('Valores') plt.mostrar()
Tramas de violín
Los diagramas de violín combinan características de diagramas de caja y diagramas de densidad de núcleo. Proporcionan una visión más rica de la distribución de datos al mostrar la densidad de probabilidad en diferentes valores. Seaborn tiene una función violinplot()
dedicada para crear estas tramas.
# Trama de violín con Seaborn sns.violinplot(x='categoría', y='valor', datos=df) plt.title('Trama de violín con Seaborn') plt.xlabel('Categorías') plt.ylabel('Valores') plt.mostrar()
Tramas de enjambre
Los diagramas de enjambre son una alternativa a los diagramas de puntos que evitan la superposición de puntos, lo que facilita la visualización de la distribución y la cantidad de datos en cada categoría. En Seaborn, puedes crear un diagrama de enjambre con la función swarmplot()
.
# Trama de enjambre con Seaborn sns.swarmplot(x='categoría', y='valor', datos=df) plt.title('Conspiración de enjambre con Seaborn') plt.xlabel('Categorías') plt.ylabel('Valores') plt.mostrar()
Contar parcelas
Los gráficos de recuento son una forma de gráfico de barras que muestra el recuento de observaciones en cada categoría. En Seaborn, la función countplot()
se utiliza para crear estos gráficos de forma rápida e intuitiva.
# Contar trama con Seaborn sns.countplot(x='categoría', datos=df) plt.title('Conspiración con Seaborn') plt.xlabel('Categorías') plt.ylabel('Contar') plt.mostrar()
Personalización y estilo de gráficos
Tanto Matplotlib como Seaborn permiten amplias personalizaciones de los gráficos. Puede ajustar colores, estilos de línea, marcadores y muchos otros aspectos para mejorar la presentación y legibilidad de los gráficos. Seaborn también ofrece estilos de temas que se pueden aplicar globalmente para una apariencia consistente y profesional.
# Personalizando gráficos con Matplotlib plt.bar(categorías, valores, color='azul cielo') plt.title('Trama personalizada con Matplotlib') plt.xlabel('Categorías') plt.ylabel('Valores') # Cambiar el estilo y color de fuente del título plt.title('Gráfico personalizado', tamaño de fuente=14, color='rojo oscuro') plt.mostrar() # Aplicar estilos de temaen Seaborn sns.set_theme(estilo='cuadrículablanca') sns.countplot(x='categoría', datos=df, paleta='pastel') plt.title('Gráfico con estilo del tema Seaborn') plt.xlabel('Categorías') plt.ylabel('Contar') plt.mostrar()
Conclusión
Visualizar datos categóricos es un paso esencial en el análisis exploratorio de datos. Matplotlib y Seaborn son dos bibliotecas potentes que ofrecen una amplia gama de opciones para crear gráficos atractivos e informativos. Al utilizar estas herramientas, puede obtener información valiosa sobre sus datos y comunicar sus hallazgos de manera efectiva.
En resumen, la capacidad de visualizar e interpretar datos categóricos es un aspecto importante de trabajar con Python para el aprendizaje automático y el aprendizaje profundo. La práctica continua con estas bibliotecas y la experimentación con diferentes tipos de gráficos mejorarán sus habilidades de EDA y ayudarán a garantizar que sus análisis se basen en una comprensión sólida de los datos subyacentes.