Plan de Aprendizaje Completo: NumPy
Objetivo: Pensar en arreglos, no en bucles de Python, para preparar Pandas, visualización y el salto a cómputo distribuido.
Metodología: Cada fase termina con un script medido. Si un
forrecorre celdas, todavía no está la fase.
Tus apuntes van en Mis notas.
Índice
- Fase 1: Arrays, dtypes y creación
- Fase 2: Indexación, máscaras y broadcasting
- Fase 3: Álgebra y agregaciones
- Fase 4: Rendimiento y puente a tablas
- Proyectos integradores
Fase 1: Arrays, dtypes y creación
Meta: Crear
ndarraya propósito y saber qué tipo numérico estás usando.
-
array,zeros,ones,arange,linspace,full -
shape,ndim,size,dtype,itemsize - Enteros vs flotantes vs booleanos;
astypey pérdida de precisión - Diferencia entre vista y copia (
reshapevscopy) - 🧪 Práctica: Genera una matriz 1_000 x 8 de mediciones y reporta shape, dtype y memoria.
Fase 2: Indexación, máscaras y broadcasting
Meta: Seleccionar y transformar sin bucles.
- Slicing, indexación elegante e indexación booleana
- Máscaras combinadas con
&,|,~(noand/or) - Broadcasting: alinear formas
(n, 1)con(1, m) -
np.where,np.clip,np.nany por quéNaNno esNone - 🧪 Práctica: Limpia una matriz con valores fuera de rango y nulos usando solo máscaras.
Fase 3: Álgebra y agregaciones
Meta: Resumir y combinar arreglos como lo harías en una métrica.
-
sum,mean,std,min,maxconaxis - Producto punto, multiplicación de matrices (
@) y normas -
unique,bincount,histogram - Semillas con
np.random.default_rngpara resultados repetibles - 🧪 Práctica: Normaliza columnas (z-score) y calcula una matriz de correlación simple.
Fase 4: Rendimiento y puente a tablas
Meta: Saber cuándo NumPy basta y cuándo pasar a Pandas.
- Vectorizar una función con
np.vectorizey por qué casi nunca es la mejor opción - Comparar un bucle Python contra una operación de array con
timeit - Guardar y leer
.npy/.npz - De array a
DataFrame: cuándo hace falta índice, columnas y tipos - 🧪 Práctica: Reescribe un script de totales diarios en NumPy y documenta el speedup.
Proyectos integradores
- Control de calidad de sensores — máscaras, rangos válidos y un resumen por columna.
- Mini feature store numérico — normalización y una matriz lista para graficar en Matplotlib.
Recursos
| Recurso | Uso |
|---|---|
| NumPy absolute beginners | Base oficial |
| Broadcasting | Formas y ejes |
Criterios de avance
| Fase | La dominas cuando... |
|---|---|
| 1 | Creas un array con el dtype y la forma que pediste, no los que salieron por accidente |
| 2 | Filtras y rellenas sin un for |
| 3 | Agregas por eje y explicas qué dimensión desaparece |
| 4 | Mides un cambio de rendimiento y decides si el siguiente paso es Pandas |