Ci sono molte risposte a questa domanda. Eccone uno che probabilmente non vedrai altrove, quindi lo includo qui perché credo sia pertinente all'argomento. Le persone spesso credono che, poiché la mediana è considerata una misura solida rispetto agli outlier, sia robusta per quasi tutto. In effetti, è anche considerato robusto da distorsioni nelle distribuzioni distorte. Queste due robuste proprietà della mediana sono spesso insegnate insieme. Si potrebbe notare che le distribuzioni inclinate sottostanti tendono anche a generare piccoli campioni che sembrano avere valori anomali e la saggezza convenzionale è che si usano i mediani in tali situazioni.
#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 dimostrazione che questo è distorto e la forma di base)
hist(rexg(1e4, 0, 1, 1))
Ora, vediamo cosa succede se campioniamo da questa distribuzione varie dimensioni del campione e calcoliamo la mediana e intendiamo vedere quali sono le differenze tra loro.
#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)
Come si può vedere dalla trama sopra, la mediana (in rosso) è molto più sensibile alla n della media. Ciò è contrario ad alcune saggezze convenzionali riguardo all'uso di mediane con ns bassi, specialmente se la distribuzione potrebbe essere distorta. E, rafforza il punto che la media è un valore noto mentre la mediana è sensibile ad altre proprietà, una se la quale è la n.
Questa analisi è simile a Miller, J. (1988). Un avvertimento sul tempo di reazione mediano. Journal of Experimental Psychology: Human Perception and Performance , 14 (3): 539–543.
REVISIONE
Pensando al problema dell'inclinazione, ho considerato che l'impatto sulla mediana potrebbe essere solo perché in piccoli campioni hai una maggiore probabilità che la mediana sia nella coda della distribuzione, mentre la media sarà quasi sempre ponderata in base a valori più vicini al modalità. Pertanto, forse se uno stesse semplicemente campionando con una probabilità di valori anomali, potrebbero verificarsi gli stessi risultati.
Quindi ho pensato a situazioni in cui possono verificarsi valori anomali e gli sperimentatori possono tentare di eliminarli.
Se gli outlier si sono verificati in modo coerente, come uno in ogni singolo campionamento di dati, le mediane sono robuste contro l'effetto di questo outlier e vale la storia convenzionale sull'uso delle mediane.
Ma di solito non è così che vanno le cose.
Si potrebbe trovare un valore anomalo in pochissime celle di un esperimento e decidere di usare la mediana invece della media in questo caso. Ancora una volta, la mediana è più robusta ma il suo impatto effettivo è relativamente piccolo perché ci sono pochissimi valori anomali. Questo sarebbe sicuramente un caso più comune di quello sopra, ma l'effetto dell'uso di una mediana sarebbe probabilmente così piccolo che non importerebbe molto.
Forse più comunemente i valori anomali potrebbero essere una componente casuale dei dati. Ad esempio, la vera media e la deviazione standard della popolazione può essere di circa 0 ma c'è una percentuale del tempo che campioniamo da una popolazione anomala in cui la media è 3. Considera la seguente simulazione, in cui viene campionata solo una tale popolazione variando il campione taglia.
#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 è in rosso e media in nero. Questo è un risultato simile a quello di una distribuzione distorta.
In un esempio relativamente pratico dell'uso delle mediane per evitare gli effetti dei valori anomali, si possono trovare situazioni in cui la stima è influenzata da n molto di più quando si usa la mediana rispetto a quando si usa la media.