Polars — DataFrames modernos
Ya sabes pandas. Sabes leer datos, transformar columnas, agrupar, unir tablas. Entonces, ¿por qué aprender otra librería de DataFrames?
Porque pandas tiene límites estructurales que no se pueden arreglar sin romperlo. Su creador, Wes McKinney, los documentó él mismo en 2017. Polars es la respuesta: una librería diseñada desde cero en Rust, con evaluación lazy, paralelismo real (sin GIL), y Apache Arrow como formato nativo de memoria.
Este módulo conecta dos hilos del curso:
Secciones 12–14: pandas (manipulación de datos tabulares)
Secciones 15–16: modelos de ejecución (paralelismo, lazy eval, GIL)
│ │
└──────────┬───────────────────┘
▼
Sección 17: Polars
= arquitectura de cómputo aplicada a datos tabulares
Polars no es “pandas pero más rápido” — es una forma diferente de pensar sobre transformación de datos. Las expresiones reemplazan la indexación booleana, la evaluación lazy reemplaza la ejecución inmediata, y el optimizador de consultas decide el mejor plan de ejecución antes de tocar un solo dato.
Contenido
| Archivo | Tema | Notebook | Tiempo est. |
|---|---|---|---|
| Historia y diseño | Origen, motivación, filosofía de diseño | — | ~10 min |
| Arquitectura | Arrow, lazy vs eager, optimizador, Rayon, tipos | — | ~15 min |
| Polars puro | Expresiones, contextos, UDFs, listas, Struct, LazyFrame | 01_polars_fundamentos | ~20 min + ~35 min |
| Pipeline E2E | Limpieza de datos completa en Polars | 02_pipeline_e2e | ~15 min + ~30 min |
| Polars vs pandas | Comparación lado a lado de operaciones comunes | 03_polars_vs_pandas | ~15 min + ~25 min |
| Benchmarks | Análisis de rendimiento con explicación arquitectónica | 04_benchmarks_y_avanzado | ~10 min + ~60 min |
Notebooks
| Notebook | Tema | Tiempo est. |
|---|---|---|
| 01 — Fundamentos | Expresiones, contextos, UDFs, listas, LazyFrame | ~35 min |
| 02 — Pipeline E2E | Limpieza de datos completa paso a paso | ~30 min |
| 03 — Polars vs pandas | Comparaciones lado a lado con timing | ~25 min |
| 04 — Benchmarks y avanzado | Benchmarks, series de tiempo avanzadas, ejercicios | ~60 min |
Prerequisitos
- Módulos 12–14: pandas completados
- Módulo 16: modelos de ejecución (recomendado, no obligatorio)
- Python 3.10+
polars≥ 1.0,pandas,numpy,matplotlibinstalados
pip install polars pandas numpy matplotlib