Cómo utilizar Pandas y Matplotlib para realizar EDA en Python

El Análisis Exploratorio de Datos (EDA) es un paso esencial en cualquier proyecto de ciencia de datos, ya que nos permite comprender los datos, detectar patrones e identificar posibles problemas. En este artículo, exploraremos cómo utilizar dos populares bibliotecas de Python, Pandas y Matplotlib, para realizar EDA. Pandas es una potente biblioteca para la manipulación y análisis de datos, mientras que Matplotlib es una biblioteca versátil para la visualización de datos. Cubriremos los fundamentos de cargar datos en un DataFrame de pandas, explorar los datos mediante funciones de pandas, limpiar los datos y, finalmente, visualizar los datos utilizando Matplotlib. Al final de este artículo, tendrá una comprensión sólida de cómo usar Pandas y Matplotlib para realizar EDA en Python.

Importando Bibliotecas y Datos

Importando Bibliotecas

Para utilizar las bibliotecas pandas y Matplotlib en tu código de Python, primero debes importarlas. Puedes hacer esto utilizando la declaración import seguida del nombre de la biblioteca.

Python

 

python import pandas as pd
import matplotlib.pyplot as plt

En este ejemplo, estamos importando pandas y aliasándolo como ‘pd’, que es una convención común en la comunidad de ciencia de datos. También estamos importando matplotlib.pyplot y aliasándolo como ‘plt’. Al importar estas bibliotecas, podemos utilizar sus funciones y métodos para trabajar con datos y crear visualizaciones.

Cargando Datos

Una vez que has importado las bibliotecas necesarias, puedes cargar los datos en un DataFrame de pandas. Pandas proporciona varios métodos para cargar datos de diferentes formatos de archivo, incluyendo CSV, Excel, JSON, y más. El método más común es read_csv, que lee datos de un archivo CSV y devuelve un DataFrame.

Python

 

python# Load data into a pandas DataFrame
data = pd.read_csv('path/to/data.csv')

En este ejemplo, estamos cargando datos desde un archivo CSV ubicado en ‘path/to/data.csv’ y almacenándolos en una variable llamada ‘data’. Puedes reemplazar ‘path/to/data.csv’ con la ruta real de tu archivo de datos.

Al cargar datos en un DataFrame de pandas, podemos manipular y analizar fácilmente los datos utilizando las funciones y métodos de pandas. El DataFrame es una estructura de datos en forma de tabla bidimensional que nos permite trabajar con datos de manera estructurada y organizada. Proporciona funciones para seleccionar, filtrar, agrupar, aglutinar y visualizar datos.

Exploración de Datos

head() y tail()

Las funciones head() y tail() se utilizan para ver las primeras y últimas filas de los datos, respectivamente. Por defecto, estas funciones muestran las primeras/últimas cinco filas de los datos, pero puedes especificar un número diferente de filas como argumento.

Python

 

python# View the first 5 rows of the data
print(data.head()) 
# Ver las últimas 10 filas de los datos
print(data.tail(10))

info()

La función info() proporciona información sobre el DataFrame, incluyendo el número de filas y columnas, los tipos de datos de cada columna y el número de valores no nulos. Esta función es útil para identificar valores faltantes y determinar los tipos de datos apropiados para cada columna.

Python

 

python# Get information about the data
print(data.info())

describe()

La función describe() proporciona estadísticas resumidas para las columnas numéricas en el DataFrame, incluyendo la cuenta, la media, la desviación estándar, el mínimo, el máximo y los cuartiles. Esta función es útil para obtener una visión rápida de la distribución de los datos.

Python

 

python# Get summary statistics for the data
print(data.describe())

value_counts()

La función value_counts() se utiliza para contar el número de ocurrencias de cada valor único en una columna. Esta función es útil para identificar la frecuencia de valores específicos en los datos.

Python

 

python# Count the number of unique values in a column
print(data['column_name'].value_counts())

Estos son solo algunos ejemplos de funciones de pandas que puedes usar para explorar datos. Hay muchas otras funciones que puedes utilizar dependiendo de tus necesidades específicas de exploración de datos, como isnull() para verificar valores faltantes, groupby() para agrupar datos por una columna específica, corr() para calcular coeficientes de correlación entre columnas y más.

Limpieza de Datos 

isnull()

La función isnull() se utiliza para verificar valores faltantes o nulos en el DataFrame. Devuelve un DataFrame con la misma forma que el original, con valores True donde falta el dato y valores False donde está presente. Puedes usar la función sum() para contar el número de valores faltantes en cada columna.

Python

 

python# Check for missing values
print(data.isnull().sum())

dropna()

La función dropna() se utiliza para eliminar filas o columnas con valores faltantes o nulos. Por defecto, esta función elimina cualquier fila que contenga al menos un valor faltante. Puedes usar el argumento subset para especificar qué columnas verificar para valores faltantes y el argumento how para especificar si se deben eliminar filas con cualquier valor faltante o solo aquellas donde todos los valores estén faltantes.

Python

 

python# Drop rows with missing values
data = data.dropna()

drop_duplicates()

La función drop_duplicates() se utiliza para eliminar filas duplicadas del DataFrame. Por defecto, esta función elimina todas las filas que tienen los mismos valores en todas las columnas. Puedes usar el argumento subset para especificar qué columnas verificar para duplicados.

Python

 

python# Drop duplicate rows
data = data.drop_duplicates()

replace()

La función replace() se utiliza para reemplazar valores en una columna con nuevos valores. Puedes especificar el valor antiguo a reemplazar y el nuevo valor para reemplazarlo. Esta función es útil para manejar problemas de calidad de datos como errores tipográficos o formatos inconsistentes.

Python

 

python# Replace values in a column
data['column_name'] = data['column_name'].replace('old_value', 'new_value')

Estos son solo algunos ejemplos de funciones de pandas que puedes usar para limpiar datos. Hay muchas otras funciones que puedes utilizar dependiendo de tus necesidades específicas de limpieza de datos, como fillna() para llenar valores faltantes con un valor o método específico, astype() para convertir tipos de datos de columnas, clip() para recortar valores atípicos y más.

El proceso de limpieza de datos juega un papel crucial en la preparación de datos para el análisis, y automatizar este proceso puede ahorrar tiempo y garantizar la calidad de los datos. Además de las funciones de pandas mencionadas anteriormente, se pueden aplicar técnicas de automatización para agilizar los flujos de trabajo de limpieza de datos. Por ejemplo, puedes crear funciones o pipelines reutilizables para manejar valores faltantes, eliminar duplicados y reemplazar valores en múltiples conjuntos de datos. Además, puedes aprovechar técnicas avanzadas como la imputación para llenar de manera inteligente los valores faltantes o expresiones regulares para identificar y corregir formatos inconsistentes. Al combinar el poder de las funciones de pandas con estrategias de automatización, puedes limpiar y estandarizar los datos de manera eficiente, mejorando la fiabilidad y la precisión de tu análisis exploratorio de datos (EDA).

Visualización de Datos

La visualización de datos es un componente crítico de la ciencia de datos, ya que nos permite obtener insights de los datos de manera rápida y sencilla. Matplotlib es una popular biblioteca de Python para crear una amplia gama de visualizaciones de datos, incluyendo gráficos de dispersión, gráficos de líneas, gráficos de barras, histogramas, diagramas de caja y más.

A continuación, se presentan algunos ejemplos de cómo crear este tipo de visualizaciones utilizando Matplotlib:

Gráfico de Dispersión

A scatter plot is used to visualize the relationship between two continuous variables. You can create a scatter plot in Matplotlib using the scatter() function.

Python

 

python# Create a scatter plot
plt.scatter(data['column1'], data['column2']) plt.xlabel('Column 1') plt.ylabel('Column 2') plt.show()

En este ejemplo, estamos creando un gráfico de dispersión con columna1 en el eje x y columna2 en el eje y. También estamos agregando etiquetas al eje x y al eje y utilizando las funciones xlabel() y ylabel().

Histograma

A histogram is used to visualize the distribution of a single continuous variable. You can create a histogram in Matplotlib using the hist() function.

Python

 

python# Create a histogram
plt.hist(data['column'], bins=10) plt.xlabel('Column') plt.ylabel('Frequency') plt.show()

En este ejemplo, estamos creando un histograma de la variable columna con 10 contenedores. También estamos agregando etiquetas a los ejes x e y utilizando las funciones xlabel() y ylabel().

Box Plot

A box plot is used to visualize the distribution of a single continuous variable and to identify outliers. You can create a box plot in Matplotlib using the boxplot() function.

Python

 

python# Create a box plot
plt.boxplot(data['column']) plt.ylabel('Column') plt.show()

En este ejemplo, estamos creando un diagrama de caja de la variable columna. También estamos agregando una etiqueta al eje y utilizando la función ylabel().

Estos son solo algunos ejemplos de lo que puedes hacer con Matplotlib para la visualización de datos. Hay muchas otras funciones y técnicas que puedes usar, dependiendo de los requisitos específicos de tu proyecto.

Conclusión

El análisis exploratorio de datos (EDA) es un paso crucial en cualquier proyecto de ciencia de datos, y Python proporciona herramientas poderosas para realizar EDA de manera efectiva. En este artículo, hemos aprendido cómo usar dos bibliotecas populares de Python, Pandas y Matplotlib, para cargar, explorar, limpiar y visualizar datos. Pandas proporciona una forma flexible y eficiente de manipular y analizar datos, mientras que Matplotlib ofrece una amplia gama de opciones para crear visualizaciones. Al aprovechar estas dos bibliotecas, podemos obtener insights de los datos de manera rápida y sencilla. Con las habilidades y técnicas aprendidas en este artículo, puedes comenzar a realizar EDA en tus propios conjuntos de datos y descubrir insights valiosos que pueden impulsar la toma de decisiones basada en datos.

Source:
https://dzone.com/articles/how-to-use-pandas-and-matplotlib-to-perform-explor