Guía Semanal 10: Análisis de Datos Tabulares con Pandas

Asignatura: Programación de Computadores / Fundamentos de Programación Temática Principal: Manipulación de DataFrames, Filtrado y Agrupación de Datos

1. Introducción y Propósito

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.

2. Resultados de Aprendizaje

  • Diferenciar la estructura bidimensional de un DataFrame frente a los vectores de NumPy.
  • Crear DataFrames manualmente (mediante diccionarios) y comprender la sintaxis para cargar archivos externos (pd.read_csv()).
  • Aplicar filtros lógicos complejos para aislar datos de interés según los requerimientos de un proyecto.
  • Utilizar la función .groupby() para segmentar información y calcular estadísticas descriptivas automáticas.

3. Hoja de Ruta de la Sesión

Parte A: De Diccionarios a DataFrames

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.

Parte B: El Resumen Automático (El poder de .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.

Parte C: Filtrado y Agrupación (La extracción de valor)

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.

4. Actividades de Aprendizaje Guiado

Interacción con el Tutor IA

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.”

Reto de Filtrado (El reverso de la hoja)

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.

5. Resumen Cognitivo (Para escritura a mano)

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.