Pivot perezoso a formato ancho
El equipo del panel quiere una vista amplia por mes y por formato de los préstamos. Polars admite .pivot() en modo lazy cuando especificas de antemano los nombres de las columnas de salida, lo que mantiene optimizada toda la canalización de extremo a extremo.
El LazyFrame monthly_checkouts contiene totales en formato largo con las columnas month, format y total, y la lista formats incluye todos los nombres de formato presentes en los datos.
Este ejercicio forma parte del curso
Escala y optimiza canalizaciones de datos con Polars
Instrucciones del ejercicio
- Haz un pivot de
monthly_checkoutspara que cadaformatpase a ser su propia columna. - Pasa la lista
formatspara que el pivot lazy conozca el esquema de salida de antemano. - Ordena el DataFrame resultante por
month.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
result = (
monthly_checkouts
# Pivot the format column into separate columns
.pivot(
on="____",
index="month",
values="total",
# Pre-declare the output column names so the pivot stays lazy
on_columns=____,
)
.collect()
# Sort the wide result by month
.sort("____")
)
print(result)