Análisis de datos con Python y la librería Pandas
Si eres un apasionado por el mundo de los datos y quieres aprender a analizarlos de forma eficiente, ¡has llegado al lugar adecuado! En este tutorial te enseñaremos todo lo que necesitas saber sobre la librería Pandas en Python, una herramienta esencial para el análisis de datos en la actualidad.
¿Qué es Pandas?
Pandas es una librería de Python que proporciona herramientas y técnicas para el análisis de datos. Es una herramienta popular en el área de la ciencia de datos gracias a su capacidad para manejar grandes conjuntos de datos, realizar operaciones eficientemente y trabajar con diferentes formatos de datos.
Instalando Pandas
Antes de comenzar a trabajar con Pandas debemos asegurarnos de que esté instalada en nuestro sistema. La forma más fácil de hacerlo es a través del gestor de paquetes de Python: pip.
pip install pandas
Cargando datos en Pandas
Uno de los primeros pasos para comenzar a trabajar con Pandas es cargar los datos que queremos analizar. Pandas puede leer datos de diversos formatos, entre los que se incluyen CSV, Excel, SQL y JSON. A continuación, te mostramos tres ejemplos:
Cargando un archivo CSV
import pandas as pd
df = pd.read_csv('datos.csv')
print(df.head())
En este ejemplo, importamos la librería Pandas y leemos un archivo CSV en un Dataframe (una estructura de datos de Pandas). El método ‘head()’ nos permite obtener una muestra de las primeras filas del Dataframe cargado para verificar que la carga fue exitosa.
Cargando un archivo Excel
import pandas as pd
df = pd.read_excel('datos.xlsx')
print(df.head())
Aquí leemos un archivo Excel de la misma forma que lo hicimos con el CSV. El resultado es que obtenemos un Dataframe con los datos cargados que podemos comenzar a manipular.
Cargando datos desde una base de datos SQL
import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('postgresql://user:password@host:port/database')
df = pd.read_sql_query('SELECT * FROM tabla', engine)
print(df.head())
En este caso, lo que hacemos es conectarnos a una base de datos a través de la librería SQLAlchemy y cargar los datos de una tabla específica en un Dataframe.
Manipulando datos en Pandas
Una vez que tenemos los datos cargados, es hora de comenzar a trabajar con ellos. Pandas nos proporciona numerosas herramientas poderosas para manipular y transformar los datos a nuestro antojo. A continuación, te mostramos algunos ejemplos de operaciones comunes:
Seleccionando columnas específicas
import pandas as pd
df = pd.read_csv('datos.csv')
# Seleccionar la columna "nombre"
nombre = df['nombre']
# Seleccionar múltiples columnas
subset = df[['nombre', 'edad', 'género']]
Filtrando filas
import pandas as pd
df = pd.read_csv('datos.csv')
# Filtrar por edad
mayores_de_30 = df[df['edad'] > 30]
# Filtrar por género
mujeres = df[df['género'] == 'Femenino']
# Combinar filtros
mujeres_mayores_de_30 = df[(df['género'] == 'Femenino') & (df['edad'] > 30)]
Agrupando datos
import pandas as pd
df = pd.read_csv('datos.csv')
# Agrupar por género y calcular la media de edad
media_edad_por_genero = df.groupby(['género'])['edad'].mean()
# Agrupar por género y calcular la suma de la columna "ingresos"
ingresos_por_genero = df.groupby(['género'])['ingresos'].sum()
Aplicando funciones a columnas
import pandas as pd
df = pd.read_csv('datos.csv')
# Aplicar la función 'sqrt' a la columna 'edad'
df['edad_sqrt'] = df['edad'].apply(sqrt)
# Aplicar una función hecha por el usuario a la columna 'ingresos'
def ajuste_por_inflación(x):
return x*1.05
df['ingresos_ajustados'] = df['ingresos'].apply(ajuste_por_inflación)
Exportando datos en Pandas
Una vez que hemos manipulado los datos a nuestro antojo, es muy probable que queramos exportarlos para utilizarlos en otro programa o compartirlos con alguien más. Pandas nos proporciona diversas formas de hacerlo.
Exportando a CSV
import pandas as pd
df = pd.read_csv('datos.csv')
# Exportar a CSV sin índice
df.to_csv('datos_procesados.csv', index=False)
# Exportar a CSV con índice
df.to_csv('datos_procesados.csv', index=True)
Exportando a Excel
import pandas as pd
df = pd.read_csv('datos.csv')
# Exportar a Excel sin formato
df.to_excel('datos_procesados.xlsx', index=False)
# Exportar a Excel con formato
writer = pd.ExcelWriter('datos_procesados.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Hoja1', index=False)
workbook = writer.book
worksheet = writer.sheets['Hoja1']
# Formatear valores numéricos
format = workbook.add_format({'num_format': '$ #,##0.00'})
worksheet.set_column('F:F', None, format)
writer.save()
Como puedes ver, Pandas es una herramienta poderosa y versátil para el análisis y manipulación de datos. Con ella, podrás realizar operaciones eficientes y avanzadas en grandes conjuntos de datos. Si necesitas más recursos, no dudes en consultar la documentación oficial en la página web de Pandas.¡A por ello!