Parte 0 — Prerrequisitos: Python + NumPy + pandas + visualización + SQL + APIs
49 clases · ~11–13 semanas a ritmo moderado · ✅ Contenido completo**
Fuentes (por bloque):
- VanderPlas (Python Data Science Handbook) — NumPy (014–021), pandas (022–032), visualización (033–039).
- Ramalho (Fluent Python 2e) — Python idiomático (006–013).
- Tanimura (SQL for Data Scientists) — SQL (041–042).
- Mitchell (Web Scraping with Python 2e) — clase 046.
- Docs oficiales (Python, requests, BeautifulSoup, folium/plotly, MongoDB) cuando son la mejor referencia.
Cada clase tiene su README.md con objetivo, resultados de aprendizaje verificables, dataset recomendado, 5 ejercicios y homework con criterio de aceptación. Cada notebook.ipynb trae 10–18 celdas mezclando markdown explicativo + código ejecutable (basado en VanderPlas/Ramalho donde aplica).
✨ Ampliación pedagógica (v2.2.0): todas las 49 clases incluyen además tres secciones nuevas:
- 📖 Definiciones y características — términos técnicos con explicación y características clave.
- ⚠️ Errores comunes — tabla de síntomas/mensajes con causa y solución concretas (los bugs que ven los alumnos en clase).
- ❓ Preguntas frecuentes — FAQs auténticas que aparecen al estudiar cada tema.
🎯 ¿De qué trata esta parte?
Esta parte construye toda la base técnica que el resto del programa da por sentada. No es "introducción a Python" — es el conjunto mínimo de herramientas con las que un data scientist trabaja a diario: el lenguaje, los entornos reproducibles, el control de versiones, el stack numérico (NumPy / pandas), la visualización (matplotlib / seaborn / plotly), el acceso a datos (SQL, NoSQL, APIs, scraping) y la disciplina de proyecto (logging, type hints, manejo de errores, estructura cookiecutter).
El recorrido es deliberadamente extenso porque cada laguna acá se convierte en deuda invisible que aparece después en Parte 1 (ML clásico) y Parte 2 (Deep Learning). Quien complete bien esta parte puede leer cualquier notebook profesional, reproducirlo, modificarlo y debuggearlo.
🧩 Problemas que resuelve
- Configurar un entorno Python aislado y reproducible (venv / uv / conda) sin colisiones de dependencias.
- Manipular datasets tabulares de tamaño medio (cientos de miles de filas) sin caer en bucles ni código lento.
- Limpiar, transformar y unir datos sucios usando pandas (faltantes, tipos, formatos, joins, groupby).
- Producir gráficos publicables (no solo
df.plot()) con matplotlib + seaborn, incluyendo mapas geográficos. - Consultar bases relacionales con SQL avanzado (CTEs, window functions) y conectarlas desde Python.
- Acceder a datos externos vía APIs REST y, cuando no hay API, mediante web scraping responsable.
🎓 Resultados de aprendizaje
Al finalizar esta parte, el estudiante podrá:
- Levantar un proyecto nuevo con estructura reproducible, dependencias fijadas y
pre-commiten menos de 10 minutos. - Escribir código NumPy/pandas vectorizado (sin loops) y justificar por qué es más rápido.
- Diseñar visualizaciones efectivas que comuniquen una conclusión, no solo "que se vean lindas".
- Escribir consultas SQL no triviales (window functions, CTEs recursivas) y traducirlas a pandas y viceversa.
- Extraer datos de una API o sitio web y dejarlos listos para análisis, manejando paginación y rate-limiting.
🗺️ Estructura temática
- Setup y reproducibilidad — clases 001–005 — instalación, Jupyter, Git/GitHub, estructura de proyecto, editor.
- Python para data science — clases 006–013 — tipos, comprehensions, funciones, OOP, pathlib, logging, type hints.
- NumPy (8 clases) — clases 014–021 — creación, ufuncs, agregaciones, broadcasting, masks, álgebra lineal, aleatoriedad.
- pandas + Polars + Parquet/Arrow (14 clases) — clases 022–034 — Series/DataFrame, indexación, joins, groupby, pivot, strings, series de tiempo.
- Visualización — clases 035–042 — matplotlib en profundidad, seaborn, visualización geográfica.
- SQL — clases 043–045 — desde fundamentos a window functions y conexión desde Python.
- Acceso a datos externos — clases 046–048 + 049 (async/httpx moderno) — MongoDB, APIs REST, web scraping con BeautifulSoup.
📥 Material descargable — parte completa
Materiales consolidados con TODAS las clases de esta parte (útiles para revisar offline o imprimir el bloque entero):
- 📄 Guía PDF — parte completa — todas las clases concatenadas con headings demoteados.
- 🎞️ Presentación PPTX — parte completa — portada + TOC + slides de cada clase.
📚 Ficha por clase
✨ 49 de 49 clases tienen contenido pedagógico ampliado (📖 Definiciones · ⚠️ Errores comunes · ❓ FAQ).