Abstract
Al trabajar con conjuntos de datos a menudo nos encontramos con valores atípicos (outliers), los que por tener la capacidad de distorsionar un modelo estadístico, pueden afectar negativamente la precisión de sus resultados (especialmente en los modelos de regresión). Al trabajar con datos relativos a promedios de ingresos en la Casen nos encontramos con múltiples outliers, por lo que estamos interesados en un criterio estadístico que nos permita eliminarlos y obtener por tanto una comprensión de la distribución de los ingresos más cercana a la realidad.
Los valores notablemente diferentes de la mayoría en un conjunto de datos se conocen como atípicos u outliers. Son anomalías que ocurren debido a errores de medición, no siempre siendo el resultado de observaciones mal registradas, sino que también producto de fluctuaciones naturales. Pueden también ser sólo simplemente hallazgos importantes.
Los valores atípicos pueden ser peligrosos porque la mayoría de los estadísticos, como la media, la desviación estándar y la correlación, son muy sensibles a ellos.
Si es bueno o no eliminarlos de un conjunto de datos, depende de si afectan al modelo de manera positiva o negativa, requiriéndose para ello de cierta investigación. Sin embargo, no se recomienda descartar una observación simplemente porque parezca ser un valor atípico.
En el estudio de la distribución de los ingresos de la Casen nos encontramos con múltiples outliers que distorsionan su comprensión. Deberemos eliminarlos.
Para lo anterior nos serviremos del diagrama de caja y bigotes. El diagrama de caja y bigotes suele ser considerado muy básico, sin embargo entrega información notable. Tanto, que debemos repasar algunos estadísticos básicos.
La media: es simplemente el promedio de un conjunto de datos.
La mediana: es el número que deja por debajo de sí a la mitad de los datos, una vez que éstos están ordenados de menor a mayor.
Por ejemplo, la mediana del número de hijos de un conjunto de trece familias, cuyos respectivos hijos son:
3, 4, 2, 3, 2, 1, 1, 2, 1, 1, 2, 1 y 1, es 2, puesto que, una vez ordenados los datos:
1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 4, el que ocupa la posición central es 2:
\({\displaystyle {\rm {\underbrace {1,\ 1,\ 1,\ 1,\ 1,\ 1,} _{Mitad\;inferior}\;\underbrace {\color {Red}2,} _{Mediana\;}\;\underbrace {2,\ 2,\ 2,\ 3,\ 3,\ 4} _{Mitad\;superior}}}}\)
En caso de un número par de datos, la mediana no correspondería a ningún valor de la variable, por lo que se conviene en tomar como mediana el valor intermedio entre los dos valores centrales. Por ejemplo, en el caso de doce datos como los siguientes:
\({\displaystyle {\rm {\underbrace {1,\ 1,\ 1,\ 1,\ 1,} _{Valores\;inferiores}\;\underbrace {\color {Red}1,\ 2,} _{Valores\;intermedios}\;\underbrace {2,\ 2,\ 3,\ 3,\ 4} _{Valores\;superiores}}}}\)
Se toma como mediana: \(1,5 = \frac{{\color{Red}1}+{\color{Red}2}}{2}\)
La moda es el valor de una distribución de números que más se repite.
Rango intercuartilico.
El rango intercuartilico es la diferencia entre el tercer y el primer cuartil (Q3 - Q1), en el que se distribuyen aproximadamente el 50% de las observaciones centrales de la variable, o dicho de otra forma, el rango intercuartílico es el 50% central o el área entre el percentil 75 y el 25 de una distribución. El rango intercuartílico es una medida de la dispersión de éste colectivo. Así pues, un rango pequeño significa que los datos centrales están muy juntos, mientras que un rango grande indica una fuerte dispersión.
Un box-plot es una forma de ver la información de un histograma concentrada en una dimensión.
El diagrama de caja y bigotes muestra cinco piezas de información clave:
El mínimo (el número más pequeño del conjunto de datos). El mínimo se muestra en el extremo inferior del gráfico.
El primer cuartil, Q1, es el extremo inferior de la caja.
La mediana se muestra como una línea en el centro de la caja.
Tercer cuartil, Q3, que se muestra en el extremo superior de la caja (en el extremo inferior del bigote superior).
El máximo (el número más grande en el conjunto de datos), que se muestra en el extremo superior del bigote superior.
Diagrama de caja y bigotes
Encuentra el mínimo. El mínimo es el extremo izquierdo del gráfico, en la punta del bigote izquierdo.
Encuentre Q1, el primer cuartil. Q1 está representado por el lado izquierdo del recuadro.
Encuentra la mediana. La mediana está representada por la barra vertical amarilla.
Encuentra Q3, el tercer cuartil.
Encuentra el máximo.
Diagrama de caja y bigotes
Vimos que el rango intercuartílico (IQR) es el 50% central o el área entre el percentil 75 y el 25 de una distribución. Se define un punto como atípíco si está por encima del percentil 75 o por debajo del percentil 25 en un factor de 1,5 veces el IQR.
Por ejemplo, si:
Q1 = percentil 25
Q3 = percentil 75
Entonces, IQR = Q3 - Q1
Y un valor atípico sería un punto por debajo de [Q1- (1.5) IQR] o por encima de [Q3 + (1.5) IQR].
La visualización no siempre es la forma más eficaz de analizar valores atípicos. El conjunto de datos puede tener cientos de miles de observaciones. Es importante tener un límite numérico que diferencie un valor atípico de uno no atípico, lo que permite trabajar con cualquier conjunto de datos, independientemente de su tamaño.
Utilizaremos la función quantile() para encontrar los percentiles 25 y 75 del conjunto de datos y la función IQR() que da la diferencia de los percentiles 75 y 25.
Q <- quantile(dataset$columna, probs = c (.25, .75), na.rm = FALSE)
La función IQR también requiere vectores numéricos y, por lo tanto, los argumentos se pasan de la misma manera.
iqr <- IQR(dataset$columna)
Ahora que conoces el IQR y los cuantiles, puedes encontrar los rangos de corte más allá de los cuales todos los puntos de datos son valores atípicos.
sobre <- Q[2] + 1.5 * iqr # Rango superior
bajo <- Q[1] - 1.5 * iqr # Rango inferior
No podemos leer la estructura del diagrama de caja y bigotes por la masiva presencia de outliers.
Al graficar el ingreso autónomo familiar por etnia nos damos cuenta de valores outliers muy grandes en la categoría: “No pertenece a ningun pueblo indígena”, pero en general en todas.
Lo anterior es evidencia de que por la masiva presencia de outliers no obtenemos una información real.
Obtengamos un subset con la etnia “No pertenece a ningún pueblo indígena” y grafiquemos por sexo:
No podemos leer el gráfico de caja y bigotes. Obtengamos la tabla con los valores de los promedios del ingreso autónomo corregido familiar.
Comuna | Sabe leer? | Etnia | Sexo | yautcorh | anio | desviacion |
---|---|---|---|---|---|---|
Iquique | Sí, lee y escribe | Aimara | Hombre | 1207984.9 | 2015 | 1078234.84 |
Alto Hospicio | Sí, lee y escribe | Aimara | Hombre | 672255.1 | 2015 | 467847.66 |
Pozo Almonte | Sí, lee y escribe | Aimara | Hombre | 595851.7 | 2015 | 466515.66 |
Camiña | Sí, lee y escribe | Aimara | Hombre | 366330.6 | 2015 | 356906.60 |
Huara | Sí, lee y escribe | Aimara | Hombre | 451726.8 | 2015 | 317119.08 |
Pica | Sí, lee y escribe | Aimara | Hombre | 662215.1 | 2015 | 537243.03 |
Antofagasta | Sí, lee y escribe | Aimara | Hombre | 843889.0 | 2015 | 356303.03 |
Mejillones | Sí, lee y escribe | Aimara | Hombre | 850000.0 | 2015 | NA |
Sierra Gorda | Sí, lee y escribe | Aimara | Hombre | 528750.0 | 2015 | 40658.64 |
Taltal | Sí, lee y escribe | Aimara | Hombre | 200000.0 | 2015 | NA |
Observamos que los promedios de ingresos son exageradamente altos y que las desviaciones standard también lo son. Comunas como Mejillones tienen sd NA. Lo último ocurre cuando existe sólo una observación.
filter <- dataset2015 %>% group_by(yautcorh) %>% filter(comuna == "Mejillones") %>% filter(e1 == "Sí, lee y escribe") %>% filter(r3 == "Aimara") %>% filter(sexo == "Hombre")
filter$yautcorh
## [1] 850000
Eliminando valores atípicos:
Aplicaremos el criterio de exclusión si se supera 1.5 veces el IQR por arriba o por abajo y grafiquemos el ingreso autónomo familiar corregido a nivel nacional en la Casen del 2015.
Q <- quantile(promedios_grupales$yautcorh, probs=c(.25, .75), na.rm = FALSE)
iqr <- IQR(promedios_grupales$yautcorh)
eliminated <- subset(promedios_grupales, promedios_grupales$yautcorh > (Q[1] - 1.5*iqr) & promedios_grupales$yautcorh < (Q[2]+1.5*iqr))
Ahora los rangos son mucho más comprensibles y cercanos a la realidad.
y lo mismo ocurre si graficamos el yautcorh para quienes no pertenecen a ninguna etnia, por sexo:Group.1 | Group.2 | Group.3 | Group.4 | mean.a | sd |
---|---|---|---|---|---|
Iquique | Sí, lee y escribe | Aimara | Hombre | 875184.5 | 514567.52 |
Alto Hospicio | Sí, lee y escribe | Aimara | Hombre | 647462.9 | 423990.68 |
Pozo Almonte | Sí, lee y escribe | Aimara | Hombre | 554091.9 | 393015.75 |
Camiña | Sí, lee y escribe | Aimara | Hombre | 366330.6 | 356906.60 |
Huara | Sí, lee y escribe | Aimara | Hombre | 451726.8 | 317119.08 |
Pica | Sí, lee y escribe | Aimara | Hombre | 603609.8 | 355612.83 |
Antofagasta | Sí, lee y escribe | Aimara | Hombre | 843889.0 | 356303.03 |
Mejillones | Sí, lee y escribe | Aimara | Hombre | 850000.0 | NA |
Sierra Gorda | Sí, lee y escribe | Aimara | Hombre | 528750.0 | 40658.64 |
Taltal | Sí, lee y escribe | Aimara | Hombre | 200000.0 | NA |
Obtenemos finalmente el cálculo de los promedios corregidos con sus respectivas sd para cada categoría estudiada, los cuales se aproximan mucho más a los valores esperados y cuyas desviaciones standard son más bajas que cuando incluíamos a los outliers.
Finalmente tenemos el código con el que generamos tablas de promedios de ingresos (o deudas o ahorros) por categoría corregidos.
dataset2015 <- readRDS(file = "casen_2015_c.rds")
ab <- dataset2015
Q <- quantile(ab$yautcorh, probs=c(.25, .75), na.rm = FALSE)
iqr <- IQR(ab$yautcorh)
eliminated <- subset(ab, ab$yautcorh > (Q[1] - 1.5*iqr) & ab$yautcorh < (Q[2]+1.5*iqr))
a <- eliminated$yautcorh
b <- eliminated$comuna
d<- eliminated$e1
e <- eliminated$r3
f <- eliminated$sexo
promedios_grupales <-aggregate(a, by=list(b, d, e, f), FUN = mean , na.rm = TRUE)
promedios_grupales_sd <-aggregate(a, by=list(b, d, e, f), FUN = sd , na.rm = TRUE)
promedios_grupales$sd = promedios_grupales_sd$sd.a
Ya tenemos un criterio estadístico para eliminar outliers y construir promedios de ingresos según categorías más realistas. Ahora, La desigualdad de los ingresos puede obedecer a la curva normal, esto es, una sociedad puede manifestar niveles de desigualdad homogéneamente distribuídos, pero en el caso que hemos estudiado, los ingresos son forzados a la baja. La mayoría de la población no posee ingresos medios, sino que bajos respecto al total.