Asignatura: Programación de Computadores / Fundamentos de Programación Temática Principal: Manipulación de DataFrames, Filtrado y Agrupación de Datos
Si NumPy es una calculadora científica superpotente, Pandas es un “Excel con esteroides”. El propósito de esta semana es que los estudiantes aprendan a manejar datos estructurados reales (con textos, números y categorías combinadas). Comprenderán cómo importar registros de laboratorio o sensores, limpiarlos y extraer información estadística valiosa en un par de líneas de código.
pd.read_csv())..groupby() para segmentar
información y calcular estadísticas descriptivas automáticas.Se introduce el apodo universal de la librería:
import pandas as pd. Para entender las “tripas” de una base
de datos, los estudiantes no cargarán un archivo externo inicialmente,
sino que construirán uno mediante un diccionario de Python con datos
cruzados para ambas rutas: * Civil/Agrícola: Tipos de
suelo y concreto, con mediciones de resistencia (MPa). *
Agroindustrial: Muestras orgánicas y madera, con
porcentajes de humedad.
.describe())Se debe demostrar a los estudiantes cómo una sola línea de código
(df.describe()) reemplaza horas de trabajo manual,
entregando instantáneamente el conteo, promedio, desviación estándar y
valores máximos/mínimos de todos los ensayos del laboratorio.
Aquí radica el núcleo del análisis de datos: * Filtrado
Lógico: Enseñar a “hacerle preguntas” a la tabla. Por ejemplo:
¿Cuáles son las muestras de concreto que superan los 25 MPa? *
Agrupación (groupby): Explicar este
concepto como el equivalente a las “Tablas Dinámicas” de Excel. Los
estudiantes agruparán la tabla general por “Tipo de Material” para
descubrir automáticamente cuál es la humedad promedio de cada
categoría.
El mundo real tiene datos imperfectos. Los estudiantes deben usar el siguiente prompt para que el asistente les enseñe a lidiar con el mayor dolor de cabeza de los datos de campo:
“Actúa como un Analista de Datos experto en proyectos de ingeniería. Estoy aprendiendo a usar Pandas en Python. 1) Explícame la diferencia entre una ‘Series’ y un ‘DataFrame’. 2) Cuando importo datos de sensores reales, es común que falten valores (aparecen como NaN). Explícame qué son los valores NaN y presenta 2 métodos de Pandas para limpiarlos o rellenarlos (ej. dropna o fillna). 3) Explica qué hace exactamente la función
df.groupby()usando una analogía sencilla. Después hazme 3 preguntas para verificar mi comprensión.”
En la parte posterior de su resumen manuscrito, los estudiantes deben
escribir, a pulso y sin mirar la pantalla, el código necesario en Pandas
para: 1. Crear un filtro que seleccione únicamente las filas donde la
variable Humedad_Porcentaje sea estrictamente menor a
10.0. 2. Guardar ese resultado en una nueva variable
llamada muestras_secas.
El esquema manuscrito de esta semana debe enfocarse en la sintaxis y
los casos de uso: 1. Definición Core: Qué es un
DataFrame y por qué es superior a una hoja de cálculo tradicional. 2.
Comandos de Entrada: Sintaxis teórica de cómo se
cargaría un archivo de campo con pd.read_csv(). 3.
Herramientas de Análisis: Explicación con sus propias
palabras de la utilidad de .describe() y
.groupby(). 4. Reflexión: “La capacidad de
organizar, limpiar y consultar grandes volúmenes de datos es lo que
separa a un operador de un ingeniero analítico”.
Esta estructura deja el terreno perfectamente preparado. Para la Semana 11, el paso maestro sería juntar lo que aprendimos en la Semana 8 (Streamlit) con lo de la Semana 10 (Pandas): enseñarles a mostrar esos DataFrames y gráficos dinámicos en sus aplicaciones web.