Manipulación de Datos con pivot_table en Python
Introducción
En el análisis de datos, es muy común que necesitemos agrupar datos por una o más variables y luego calcular estadísticas sobre esas agrupaciones. La función pivot_table de la librería Pandas nos permite realizar estas tareas de manera rápida y sencilla.
¿Qué es un pivot_table?
Un pivot_table es una tabla de resumen que se crea agrupando datos por una o más variables y luego calculando estadísticas sobre esas agrupaciones. Las estadísticas que se pueden calcular incluyen la media, la mediana, la desviación estándar, el recuento, etc.
Cómo usar pivot_table
La función pivot_table tiene los siguientes argumentos:
data: El dataframe sobre el que se va a crear el pivot_table.values: La columna o columnas sobre las que se va a calcular las estadísticas.index: La columna o columnas por las que se va a agrupar los datos.aggfunc: La función que se va a utilizar para calcular las estadísticas.
Ejemplos
# Importar la librería Pandas
import pandas as pd
# Crear un dataframe
df = pd.DataFrame({
"pais": ["España", "Francia", "Alemania", "Italia", "Reino Unido"],
"ciudad": ["Madrid", "París", "Berlín", "Roma", "Londres"],
"población": [10000000, 20000000, 30000000, 40000000, 50000000]
})
# Crear un pivot_table agrupando por país y calculando la media de la población
pivot_table = df.pivot_table(values="población", index="pais", aggfunc="mean")
# Imprimir el pivot_table
print(pivot_table)
país población
0 España 5000000
1 Francia 2000000
2 Alemania 3000000
3 Italia 4000000
4 Reino Unido 5000000
Opciones avanzadas
La función pivot_table tiene muchas opciones avanzadas que nos permiten personalizar el resultado. Por ejemplo, podemos especificar el nombre de las columnas del pivot_table, o podemos calcular estadísticas adicionales.
Ejemplo
# Crear un pivot_table agrupando por país y ciudad y calculando la media de la población
pivot_table = df.pivot_table(values="población", index=["pais", "ciudad"], aggfunc="mean")
# Imprimir el pivot_table
print(pivot_table)
país ciudad población
0 España Madrid 2500000
1 España París 2500000
2 Francia París 5000000
3 Alemania Berlín 3750000
4 Alemania Roma 3750000
5 Italia Roma 5000000
6 Reino Unido Londres 5000000
Conclusión
La función pivot_table es una herramienta muy potente para la manipulación de datos en Python. Nos permite agrupar datos por una o más variables y luego calcular estadísticas sobre esas agrupaciones.


