La función median() en R: calcular la mediana

median() devuelve el valor central de tus datos una vez ordenados. La mitad queda por debajo y la mitad por encima.

Ejemplo simple

sueldos <- c(1300, 1400, 1500, 1600, 1700)

median(sueldos)

Devuelve 1500, el que queda justo en medio. Con un número par de datos, R promedia los dos centrales.

Como el resto de funciones estadísticas, se atraganta con los valores ausentes:

sueldos <- c(1300, 1400, NA, 1600, 1700)

median(sueldos)
median(sueldos, na.rm = TRUE)

Por qué usarla

Aquí está su gracia. Compárala con la media cuando hay un dato disparado:

sueldos <- c(1300, 1400, 1500, 1600, 25000)

mean(sueldos)
median(sueldos)

La media se va por encima de 6.000 €, un sueldo que no cobra nadie. La mediana se queda en 1500 y describe la realidad del grupo. Lo desarrollamos aquí: media vs mediana.

Ejemplo algo más completo: mediana por grupos

Lo habitual es querer la mediana dentro de cada categoría:

tapply(iris$Sepal.Length, iris$Species, median)

tapply() divide los datos por especie y aplica la mediana a cada trozo.

Y si quieres la mediana de varias columnas a la vez:

sapply(iris[, 1:4], median)

La mediana es también el percentil 50, así que estas dos líneas dan lo mismo:

median(sueldos)
quantile(sueldos, 0.5)