Hay muchas respuestas a esta pregunta. Aquí hay uno que probablemente no verá en otro lugar, así que lo incluyo aquí porque creo que es pertinente para el tema. La gente a menudo cree que debido a que la mediana se considera una medida robusta con respecto a los valores atípicos, también es robusta para casi todo. De hecho, también se considera robusto al sesgo en las distribuciones sesgadas. Estas dos propiedades robustas de la mediana a menudo se enseñan juntas. Uno podría notar que las distribuciones sesgadas subyacentes también tienden a generar pequeñas muestras que parecen tener valores atípicos y la sabiduría convencional es que uno usa medianas en tales situaciones.
#function to generate random values from a skewed distribution
rexg <- function (n, m, sig, tau) {
rexp(n, rate = 1/tau) + rnorm(n, mean = m, sd = sig)
}
(solo una demostración de que esto está sesgado y la forma básica)
hist(rexg(1e4, 0, 1, 1))
Ahora, veamos qué sucede si tomamos muestras de esta distribución de varios tamaños de muestra y calculamos la mediana y la media para ver cuáles son las diferencias entre ellos.
#generate values with various n's
N <- 1e4
ns <- 2:30
y <- sapply(ns, function(x) mean(apply(matrix(rexg(x*N, 0, 1, 1), ncol = N), 2, median)))
plot(ns,y, type = 'l', ylim = c(0.85, 1.03), col = 'red')
y <- sapply(ns, function(x) mean(colMeans(matrix(rexg(x*N, 0, 1, 1), ncol = N))))
lines(ns,y)
Como se puede ver en el gráfico anterior, la mediana (en rojo) es mucho más sensible a la n que la media. Esto es contrario a la sabiduría convencional sobre el uso de medianas con ns bajos, especialmente si la distribución puede estar sesgada. Y refuerza el punto de que la media es un valor conocido, mientras que la mediana es sensible a otras propiedades, una de las cuales es la n.
Este análisis es similar a Miller, J. (1988). Una advertencia sobre la mediana del tiempo de reacción. Journal of Experimental Psychology: Human Perception and Performance , 14 (3): 539–543.
REVISIÓN
Al pensar en el problema de sesgo, consideré que el impacto en la mediana podría deberse a que en muestras pequeñas tiene una mayor probabilidad de que la mediana se encuentre en la cola de la distribución, mientras que la media casi siempre estará ponderada por valores más cercanos a la modo. Por lo tanto, tal vez si uno solo estuviera muestreando con una probabilidad de valores atípicos, entonces tal vez se producirían los mismos resultados.
Así que pensé en situaciones en las que pueden ocurrir valores atípicos y los experimentadores pueden intentar eliminarlos.
Si los valores atípicos ocurrieron consistentemente, como uno en cada muestreo de datos, las medianas son sólidas contra el efecto de este valor atípico y la historia convencional sobre el uso de las medianas se mantiene.
Pero no suele ser así como van las cosas.
Uno podría encontrar un valor atípico en muy pocas celdas de un experimento y decidir usar la mediana en lugar de la media en este caso. Nuevamente, la mediana es más robusta pero su impacto real es relativamente pequeño porque hay muy pocos valores atípicos. Definitivamente, este sería un caso más común que el anterior, pero el efecto de usar una mediana probablemente sería tan pequeño que no importaría mucho.
Quizás los valores atípicos más comunes podrían ser un componente aleatorio de los datos. Por ejemplo, la media real y la desviación estándar de la población pueden ser aproximadamente 0, pero hay un porcentaje del tiempo en que tomamos muestras de una población atípica donde la media es 3. Considere la siguiente simulación, en la que se muestra una población de este tipo variando la muestra Talla.
#generate n samples N times with an outp probability of an outlier.
rout <- function (n, N, outp) {
outPos <- sample(0:1,n*N, replace = TRUE, prob = c(1-outp,outp))
numOutliers <- sum(outPos)
y <- matrix( rnorm(N*n), ncol = N )
y[which(outPos==1)] <- rnorm(numOutliers, 4)
return(y)
}
outp <- 0.1
N <- 1e4
ns <- 3:30
yMed <- sapply(ns, function(x) mean(apply(rout(x,N,outp), 2, median)))
var(yMed)
yM <- sapply(ns, function(x) mean(colMeans(rout(x,N,outp))))
var(yM)
plot(ns,yMed, type = 'l', ylim = range(c(yMed,yM)), ylab = 'Y', xlab = 'n', col = 'red')
lines(ns,yM)
La mediana es en rojo y media en negro. Este es un hallazgo similar al de una distribución sesgada.
En un ejemplo relativamente práctico del uso de medianas para evitar los efectos de los valores atípicos, se pueden encontrar situaciones en las que la estimación se ve afectada por mucho más cuando se usa la mediana que cuando se usa la media.