
Thinking in Pandas
Hannah Stepanek
- Editorial
- Apress
- Año
- 2020
- Páginas
- ~197
- Nivel
- Intermedio
De qué trata
Guía técnica y avanzada en la que Hannah Stepanek enseña a utilizar la biblioteca de análisis de datos de Python de forma óptima y eficiente (enfocada en versiones de Pandas 1.x sobre Python 3). Está dirigida a desarrolladores, ingenieros de software y científicos de datos de nivel intermedio que ya conocen la sintaxis básica de Pandas y DataFrames, pero experimentan problemas de rendimiento, cuellos de botella en memoria o tiempos de ejecución excesivos en sus flujos de procesamiento cotidianos.
El texto se sumerge en la arquitectura interna y el modelo de memoria de Pandas, detallando el funcionamiento de Series, DataFrame, el gestor de bloques BlockManager y el impacto de los tipos de datos de NumPy y CPython subyacentes. Aborda la carga y normalización eficiente de datos con read_csv y read_json, técnicas de optimización de tipos de datos categóricos y reducción de huella en memoria, indexación multinivel (MultiIndex), acceso a datos evitando copias innecesarias y la alerta SettingWithCopyWarning, y patrones vectorizados frente a la sobreutilización costosa de bucles e iteraciones con .apply(), iterrows() e itertuples(). Asimismo, profundiza en el mecanismo de agrupación split-apply-combine con groupby y trasciende los límites nativos de la librería enseñando a acelerar expresiones matemáticas complejas con NumExpr, sacando provecho de la arquitectura de la CPU, anchos de banda de memoria y librerías de álgebra lineal como BLAS y LAPACK.
El libro no plantea la creación de una aplicación monolítica ni proyectos de software completos, sino que se estructura como un análisis comparativo y práctico de optimización mediante pruebas comparativas (benchmarks) y refactorización de rutinas de datos ineficientes. Su principal virtud radica en desmitificar qué sucede bajo el capó de Pandas para erradicar vicios de programación habituales y construir código idiomático y veloz; en contrapartida, deja de lado temas de visualización gráfica, aprendizaje automático y procesamiento distribuido a gran escala (como Dask o Spark). Resulta una lectura idónea para quien ya escribe código en Pandas y necesita dar un salto cualitativo en escalabilidad y eficiencia computacional.
- Pandas 1.x
- BlockManager
- Vectorización
- Optimización de memoria
- ETL eficiente
- MultiIndex
- Groupby
- NumExpr
- BLAS y LAPACK
- Rendimiento en Python
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✗ Sin proyectos

