
Data Wrangling with Python
Jacqueline Kazil, Katharine Jarmul
- Editorial
- O'Reilly
- Año
- 2016
- Páginas
- ~508
- Nivel
- Intermedio
De qué trata
Manual práctico publicado por O'Reilly centrado en las fases iniciales y más críticas del ciclo de vida de los datos: adquisición, extracción, limpieza y estructuración de información desordenada en Python (trabajando en la transición entre Python 2.7 y Python 3.4/3.5). Está concebido para desarrolladores principiantes e intermedios, periodistas de datos, analistas e investigadores que dominan la sintaxis elemental de programación y necesitan enfrentarse a fuentes de datos caóticas del mundo real sin requerir una formación matemática o estadística avanzada.
Las autoras enseñan a manipular tanto formatos estándar legibles por máquinas como documentos no estructurados u hostiles. Cubren el uso de la biblioteca estándar (módulos csv, json y xml.etree), librerías de hojas de cálculo como xlrd y openpyxl para archivos Excel, y herramientas de extracción de texto y tablas en PDFs como pdfminer y slate. En el terreno de la adquisición en línea abordan el consumo de APIs REST con requests y el web scraping mediante BeautifulSoup, Scrapy y Selenium para interactuar con páginas dinámicas. También tratan el almacenamiento en bases de datos relacionales con sqlite3, el procesamiento y normalización de texto con expresiones regulares, la exploración preliminar de datos con pandas y matplotlib, y la automatización y calendarización de tareas mediante scripts asistidos por logging y cron.
A lo largo de la obra se resuelven ejercicios prácticos y se desarrollan casos de estudio reales basados en datos abiertos, como el monitoreo de la epidemia del Ébola, estadísticas de seguridad ferroviaria, salarios deportivos y registros globales sobre trabajo infantil. Destaca por su enfoque pragmático frente a formatos problemáticos (en particular PDFs y páginas web mal maquetadas) y por transmitir una mentalidad detectivesca de resolución de problemas. Como limitación, al haberse publicado en 2016, algunas librerías para PDFs y ciertas APIs de scraping han quedado obsoletas en entornos modernos de Python 3.10+, y no profundiza en modelado predictivo ni machine learning. Conviene tener soltura básica con la terminal y estructuras de datos nativas.
- Python 3
- Data Wrangling
- Limpieza de datos
- Web Scraping
- BeautifulSoup
- Scrapy
- Parsing de PDFs
- APIs REST
- Extracción de datos
- Automatización
- Pandas
- SQLite
¿Cómo enseña?
Teoría + práctica
- ✓ Incluye ejercicios
- ✓ Incluye proyectos
Proyectos
Extractor y tabulador de datos desde documentos PDF
Script de procesamiento que emplea pdfminer y slate para extraer texto y reconstruir tablas numéricas atrapadas en informes gubernamentales en PDF con estructuras complejas.
Rastreador web automatizado para páginas dinámicas
Pipeline de recolección de datos que integra BeautifulSoup, Scrapy y Selenium para navegar sitios web interactivos, gestionar paginaciones y almacenar información tabulada.
Investigación y saneamiento de fuentes de datos públicos
Flujos de trabajo de adquisición, depuración y normalización aplicados a conjuntos de datos abiertos sobre el brote de Ébola, incidentes ferroviarios y trabajo infantil internacional.

