¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Responder preguntas con datos: media y mediana

Después de esta lección: Puedo responder una pregunta con la media, la mediana y los grupos de un conjunto de datos.

Lección de 50 min3 comandosLaboratorio JupyterLab de ciencia de datos: pandas, Matplotlib y scikit-learn en el navegador

¿Cuántas bicis hacen falta un sábado?

Analizar datos es responder una pregunta con las cifras que tienes. Con la media, la mediana y los grupos, una tabla de 365 filas se resume en una frase.

Una empresa de bicicletas de alquiler guarda los alquileres de cada día de un año. Quiere saber si los sábados necesita más bicis que los martes.

Al terminar esta lección

Nota

Puedo responder una pregunta con la media, la mediana y los grupos de un conjunto de datos.

Palabras clave

PalabraQué significaEjemplo
Mediala suma de los valores dividida entre cuántos son
Medianael valor del medio cuando ordenas los datos de menor a mayor
Valor atípicoun valor muy distinto de todos los demás
Rangoel valor mayor menos el valor menor
Agruparreunir las filas que comparten un valorlos días de lluvia

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

La media y la mediana resumen una lista

La media se calcula sumando todos los valores y dividiendo entre cuántos son. La mediana es el valor del medio cuando los ordenas. Si hay un número par de valores, es la media de los dos del medio.

Dan una idea de lo habitual, pero a veces no coinciden.

Prueba: la caja de una tienda

Código: python
# Lo que ingresó una tienda cada día, en euros. El último día hubo una feria.
ingresos = [120, 135, 128, 140, 131, 900]

total = 0
for uno in ingresos:
    total = total + uno
media = total / len(ingresos)

ordenados = sorted(ingresos)
medio = len(ordenados) // 2
mediana = (ordenados[medio - 1] + ordenados[medio]) / 2

print("Media:", media)
print("Mediana:", mediana)
# Cambia 900 por 150 y mira cuánto se mueve cada una.

Antes de empezar

Nota

Pulsa Iniciar el laboratorio en la barra de la lección y espera a que esté en marcha. El terminal no tiene Python propio. Cada botón Ejecutar escribe docker exec jupyter, que lanza una orden dentro del contenedor del laboratorio.

Un resumen de los 365 días

El laboratorio tiene hires.csv, con una fila por día de 2025: la temperatura, la lluvia y cuántas bicis se alquilaron (hires). El script de abajo pide a pandas el resumen de esa última columna.

Pandas es una biblioteca de Python que trabaja con tablas.

Resume los alquileres del año

Comando
docker exec jupyter python3 steps/summary.py

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Ejemplo resuelto: qué dice cada línea

LíneaValorQué significa
count365días con datos
mean270,3la media de bicis alquiladas en un día
min41el día más flojo
50%273la mediana: la mitad de los días estuvo por debajo
max487el día más movido

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Agrupar responde preguntas de comparar

Para saber si algo cambia según el tiempo, separas las filas en grupos y calculas la media de cada uno. Se llama agrupar.

El script de abajo agrupa los días por el tiempo que hizo y calcula la media de alquileres de cada grupo.

Media de alquileres según el tiempo

Comando
docker exec jupyter python3 steps/weather.py

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Ejemplo resuelto: alquileres por tiempo

TiempoMedia de alquileresSe lee así
sunny312,2un día de sol: unas 312 bicis
cloudy267,0un día nublado: unas 267
rainy227,6un día de lluvia: unas 228

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Compara el fin de semana con el resto

Comando
docker exec jupyter python3 steps/weekend.py

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Responde a la pregunta del principio

La salida tiene dos filas. False son los 261 días de lunes a viernes: media 254,6 y mediana 260,0. True son los 104 días de sábado y domingo: media 309,7 y mediana 310,0.

Los fines de semana se alquilan unas 55 bicis más al día. Para la pregunta de la empresa, la respuesta es sí.

Un error frecuente

Advertencia

Mucha gente cree que la media siempre describe bien un conjunto de datos. Un solo valor muy grande la arrastra hacia arriba. Si hay valores atípicos, mira también la mediana: casi no se mueve.

Para ir más lejos: tu propia pregunta

Los alquileres cambian según el mes. Mira el script steps/months.py del laboratorio y ejecútalo. Dice la media de cada mes.

Escribe en una frase qué meses piden más bicis. Después propón una razón.

Sobre este laboratorio y su código: Laboratorio JupyterLab de ciencia de datos: pandas, Matplotlib y scikit-learn en el navegador

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.