Puede parecer contrario a la intuición, pero usar el enfoque que describe no tiene sentido (para tomar su redacción, prefiero escribir "puede conducir a resultados muy diferentes de los previstos") y uno nunca debería hacerlo: los riesgos de no funciona son consecuentes y además, existe una alternativa más simple, mucho más segura y mejor establecida disponible sin costo adicional.
Primero, es cierto que si hay un solo valor atípico, eventualmente lo encontrará utilizando el procedimiento que sugiere. Pero, en general (cuando puede haber más de un valor atípico en los datos), el algoritmo que sugiere se descompone por completo, en el sentido de que puede llevarlo a rechazar un buen punto de datos como un valor atípico o mantener los valores atípicos como buenos datos. con consecuencias potencialmente catastróficas.
A continuación, doy un ejemplo numérico simple donde la regla que propone se desglosa y luego propongo una alternativa mucho más segura y establecida, pero antes de esto explicaré a) lo que está mal con el método que propone yb) lo que generalmente prefiere alternativa a esto es.
En esencia, no puede utilizar la distancia de una observación desde la desviación media y la desviación estándar de sus datos para detectar valores atípicos de manera confiable porque las estimaciones que usa (omita la desviación estándar y la media) aún pueden ser arrastradas hacia el resto valores atípicos: esto se llama efecto de enmascaramiento.
En pocas palabras, una manera simple de detectar de manera confiable los valores atípicos es utilizar la idea general que sugirió (distancia desde la estimación de ubicación y escala) pero reemplazando los estimadores que usó (omita una media, sd) por robustos, es decir, estimaciones diseñado para ser mucho menos susceptible a ser influido por valores atípicos.
Considere este ejemplo, donde agrego 3 valores atípicos a 47 observaciones genuinas extraídas de un Normal 0,1:
n <- 50
set.seed(123) # for reproducibility
x <- round(rnorm(n,0,1), 1)
x[1] <- x[1]+1000
x[2] <- x[2]+10
x[3] <- x[3]+10
El siguiente código calcula el índice de periferia en función de la desviación estándar y la media de omisión (por ejemplo, el enfoque que sugiere).
out_1 <- rep(NA,n)
for(i in 1:n){ out_1[i] <- abs( x[i]-mean(x[-i]) )/sd(x[-i]) }
y este código produce la trama que ves a continuación.
plot(x, out_1, ylim=c(0,1), xlim=c(-3,20))
points(x[1:3], out_1[1:3], col="red", pch=16)
La imagen 1 representa el valor de su índice de periferia en función del valor de las observaciones (el más alejado de los valores atípicos está fuera del rango de este gráfico, pero los otros dos se muestran como puntos rojos). Como puede ver, excepto el más extremo, un índice de periferia construido como usted sugiere no revelaría los valores atípicos: de hecho, los valores atípicos segundo y tercero (más leves) ahora incluso tienen un valor (en su índice de periferia) menor que todos¡las observaciones genuinas! ... Bajo el enfoque que sugiere, uno mantendría estos dos valores atípicos extremos en el conjunto de observaciones genuinas, lo que lo llevaría a usar las 49 observaciones restantes como si vinieran del mismo proceso homogéneo, lo que le da un resultado final estimación de la media y la desviación estándar basada en estos 49 puntos de datos de 0.45 y 2.32, ¡una descripción muy pobre de cualquiera de las partes de su muestra!
xiX
O(xi,X)=|xi−med(X)|mad(X)
med(X)Xmad(X)
En R, este segundo índice de periferia se puede calcular como:
out_2 <- abs( x-median(x) )/mad(x)
y graficado (como antes) usando:
plot(x, out_2, ylim=c(0,15), xlim=c(-3,20))
points(x[1:3], out_2[1:3], col="red", pch=16)
La imagen 2 traza el valor de este índice de periferia alternativo para el mismo conjunto de datos. Como puede ver, ahora los tres valores atípicos se revelan claramente como tales. Además, esta regla de detección de valores atípicos tiene algunas propiedades estadísticas establecidas. Esto lleva, entre otras cosas, a reglas de corte utilizables. Por ejemplo, si se puede suponer que la parte genuina de los datos se extrae de una distribución simétrica con un segundo momento finito, puede rechazar todos los puntos de datos para los que
|xi−med(X)|mad(X)>3.5
como valores atípicos. En el ejemplo anterior, la aplicación de esta regla lo llevaría a marcar correctamente las observaciones 1,2 y 3. Rechazando estas, la media y la desviación estándar de las observaciones restantes es 0.021 y 0.93 receptivamente, una descripción mucho mejor de la parte genuina de la muestra !