¿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

Media, mediana y desviación típica

Después de esta lección: Puedo resumir una lista de datos con un valor central y una medida de dispersión.

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

Resumir una lista de datos con tres números

La media, la mediana y la desviación típica son tres números que resumen una lista de datos. Los dos primeros dicen dónde está el centro, y el tercero dice cuánto se separan los datos de ese centro.

Con ellos puedes describir un año entero de alquileres de bicis en una línea, y comparar dos tiendas sin leer cientos de filas.

Al final de esta lección

Nota

Puedo resumir una lista de datos con un valor central y una medida de dispersión.

Palabras clave

PalabraQué significa
Mediala suma de los valores dividida entre cuántos hay
Medianael valor del centro cuando están en orden
Modael valor que más se repite
Rangoel valor mayor menos el menor
Varianzala media de los cuadrados de las distancias a la media
Desviación típicala raíz cuadrada de la varianza

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

Media, mediana y moda son centros distintos

La media reparte el total a partes iguales. La mediana es el valor que queda en medio al ordenar la lista. La moda es el valor más frecuente.

No dan el mismo número. Un solo día enorme sube la media, pero apenas mueve la mediana. Por eso conviene mirar las dos.

Resume un año de alquileres

Comando
docker exec jupyter python3 -c "import csv,statistics as s; h=[int(r['hires']) for r in csv.DictReader(open('hires.csv'))]; print(len(h), round(s.mean(h),1), s.median(h), max(h)-min(h))"

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: dos tiendas con la misma media

TiendaPedidos de cinco díasMediaMedianaRango
A10, 10, 10, 10, 1050 / 5 = 10100
B0, 5, 10, 15, 2050 / 5 = 101020

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

Un error muy común

Advertencia

Mucha gente cree que la media basta para describir unos datos. No es así: las tiendas A y B tienen media 10 y son muy distintas. Da siempre un centro y una dispersión, y mira también el rango.

La desviación típica mide la dispersión

La dispersión dice si los datos están juntos o repartidos. El rango solo usa dos valores, el mayor y el menor. La varianza usa todos.

Para calcularla, resta la media a cada valor y eleva el resultado al cuadrado. Después haz la media de esos cuadrados. La desviación típica es su raíz cuadrada y vuelve a las unidades de los datos.

Ejemplo resuelto: la varianza paso a paso

ValorDistancia a la media (4)Distancia al cuadrado
22 - 4 = -24
44 - 4 = 00
44 - 4 = 00
66 - 4 = 24
Total8, y 8 / 4 = 2 es la varianza; su raíz es 1,4

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

Mide la dispersión del año

Comando
docker exec jupyter python3 -c "import csv,statistics as s; h=[int(r['hires']) for r in csv.DictReader(open('hires.csv'))]; print(round(s.pvariance(h),1), round(s.pstdev(h),1))"

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

Varianza a mano, línea a línea

Código: python
# Cinco pedidos de una cafetería, en euros.
pedidos = [2, 4, 4, 6, 9]

media = sum(pedidos) / len(pedidos)
suma = 0
for pedido in pedidos:
    suma = suma + (pedido - media) ** 2
varianza = suma / len(pedidos)

print("media:", media)
print("varianza:", varianza)
print("desviación típica:", round(varianza ** 0.5, 2))
# Cambia el 9 por un 5 y vuelve a ejecutar.
# ¿Qué número baja más, la media o la varianza?

Para ir más lejos: los días de lluvia

Con la misma orden, cambia el filtro para mirar solo los días de lluvia. Verás 120 días, media 227,6 y desviación típica 80,0.

La media baja 43 alquileres respecto al año, pero la dispersión casi no cambia. Escribe una frase que lo explique con tus palabras.

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.