Thinking in Pandas

Thinking in Pandas

¿Cómo usar la biblioteca de análisis de datos de Python de la manera correcta?

Este artículo es un mini resumen del libro Thinking in Pandas: How to Use the Python Data Analysis Library the Right Way de la autora Hannah Stepanek, lo leí por Oreilly pero también está en Amazon. Es una invitación a que lo lean y que vayan más a detalle en cada uno de los temas que voy a mencionar y que allí aparecen.

Resumen

  • Contexto
  • Cómo funciona Pandas: descripción general
  • Consejos y trucos
  • Conclusión
  • Referencias

Contexto

En abril de 2019 se publica la primera imagen de un agujero negro ubicado a 53 millones de años luz en la galaxia Messier 87. Fue publicado por el equipo del telescopio Event Horizon. Para esta operación se utilizaron:

  • 8 telescopios de todo el mundo recopilaron los datos durante varios días en 2017
  • 350 Terabytes recolectados cada día
  • 45 petabytes de datos recopilados en total
  • camiones y aviones que entregaron los discos duros a los centros de datos en Cambridge, MA y Bonn, Alemania.
  • 4 algoritmos de imágenes por computadora.

katie.jpeg

Tuvo como resultado una foto histórica.

foto.png

En la investigación se utilizaron:

tools.png

Pandas se utilizó para normalizar todos los datos recopilados (45 petabytes). Entonces, ¿por qué los pandas son tan lentos en mi computadora? Porque estamos codificando de una manera subóptima. El problema está en el Translate.

tools2.png

Tipos de Pandas a NumPy:

tools3.png

Consejos y trucos

  • Usar pandas version mayor o igual a 1.0.0. Mejoras en esta versión:

Refactors and bug fixes para group by. Manejo de valores nulos. CSV loads and dump. La instrucción if se movió hacia abajo para evitar la ralentización del rendimiento al convertir tipos de datos en objetos.

  • Especificar los tipos de las columnas al cargar
  • Especifique las columnas necesarias al cargar
  • Eliminar el DataFrame cuando ya no sea necesario
  • Lea un archivo y procese por fragmentos (útil para grandes conjuntos de datos)
  • Convierta explícitamente ciertas columnas en objetos de fecha y hora al cargar
  • Utilice índices múltiples cuando sea posible
  • Evite el método apply, use funciones integradas

Conclusión

  • No se trata de la librería, se trata de ingeniería de software.
  • Pandas pueden volverse óptimo con un mínimo esfuerzo

Referencias

Thinking in Pandas: How to Use the Python Data Analysis Library the Right Way

pandas1.png