Un análisis efectivo de EDA presenta los datos de tal manera que permite al cerebro humano detectar patrones. EDA permitiría:
- Ayudar al razonamiento inductivo para sugerir ideas.
- Desarrollar y comprender aspectos teóricos
- Facilitar la validación de supuestos
- Hallar conclusiones adicionales al objetivo primario
- histogramas y funciones de densidad
- gráficos de árbol (steam and leaf)
- diagramas de cajas (boxes)
- diagramas de dispersión
- mapas de calor
- diagramas de nodos (trellis diagram)
Histograma
Permite observar la cantidad de observaciones en diferentes intervalos de la variable. Se presenta en forma de gráfico de barras.
El histograma permite responder las siguientes preguntas:
- ¿Qué tipo de distribución tienen los datos?
- ¿Dentro de que rango se localizan la mayoría de los datos?
- ¿Qué tan dispersos se encuentran los datos?
- ¿Existe asimetría?
- ¿Existen Outliers?
Por ejemplo,el siguiente gráfico muestra el nivel en metros de las crecidas del río Nilo durante el período 1871-1970:
Código R:
hist(Nile,breaks=400 + (0:20)*50,col=terrain.colors(2), main="corrientes del Nilo (1871-1970)",xlab="Crecidas en mts", ylab="Frecuencia")
Para obtener los números de clases (columnas), existen varios criterios sugestivos, como tomar la raiz cuadrada del número de observaciones o tomar la regla de Sturgess (c = 1 + log2N). Sin embargo ninguno de ellos es exacto ni de necesaria aplicación. Tampoco las clases deben ser de igual longitud.
Todo depende de lo que se quiera ver. A mi entender, el histograma debe construirse de tal manera que no oculte rasgos esenciales de la muestra.
Así por ejemplo se da en la construcción de histogramas para monto de siniestros: suele existir una gran cantidad de siniestros de valor $ 0. En dicho caso es conveniente graficar la primer columna con este único valor ($0) y luego elegir un esquema de distribución según la magnitud de los siniestros. Inclusive, si el 5-10% de los siniestros más grandes serían muy dispares del resto, convendría agruparlos todos en le último escalón del histograma y enumerarlos debajo para advertir al lector sobre su ubicación y valor.
Funciones de densidad
Al intentar parametrizar un fenómeno, suele estarse interesado en hallar su función de densidad. Para ello se grafica inicialmente el histograma.
Lo primero en que se puede pensar es que la función de densidad es la normalización del histograma por el tamaño de la muestra N. La división de las clases por N nos mostrará un set de probabilidades discretas, aún así se tienen inconvenientes con la forma de la distribución si es que las clases no son equidistantes y de base = 1.
Una primera forma de solucionarlo es tomando en cuenta la longitud de cada clase, de manera tal que el área del histograma sea igual a 1.
Aunque también es válido obtener una función de densidad empírica a través del suavizamiento del histograma. Los métodos de suavizamiento son variados, desde una media móvil de N muestras hasta procedimientos más avanzados. El uso de diferentes ventanas Kernel podría darnos el siguiente resultado:
Código R:
hist(Nile,breaks=400 + (0:20)*50,col=terrain.colors(2), main="corrientes del Nilo (1871-1970)",xlab="Crecidas en mts", ylab="Frecuencia", probability = TRUE)
densRct <- density(Nile, kernel="rectangular")
lines(densRct,col="red",lwd=2)
densGauss <- density(Nile, kernel="gaussian")
lines(densGauss,col="blue",lwd=2)
densRctx2 <- density(Nile, kernel="rectangular", adjust=2)
lines(densRctx2,col="red",lwd=4)
densGaussx0.5 <- density(Nile, kernel="gaussian", adjust=0.5)
lines(densGaussx0.5,col="blue",lwd=1)
Se graficaron 4 suavizamientos. En rojo tenemos el uso de una ventan rectangular, siendo la línea gruesa una ventana más ancha (por eso sale más suavizada y chata).
En azul se grafican dos líneas que utilizan una ventana gaussiana (asume que cada punto muestral se distribuye normalmente). Estas últimas tienen la ventaja de "mezclar" mejor la contribución de cada observación a las observaciones adyacentes.
Podemos apreciar que según el método de suavizamiento se utilice, los resultados pueden variar. Esta es la principal desventaja del suavizamiento. Aunque es de mencionar que similares deformaciones se producen al elegir el ancho de las columnas del histograma.
Diagramas de árbol (Steam and Leaf)
Estos diagramas son una forma también rápida de visualizar una muestra. Posee las mismas características que un histaograma, aunque se concentra más en el contenido de las columnas que en su forma.
Se trata de un ordenamiento de una variable numérica que tine como tamaño de grupo al cociente entre el tamaño de la muestra y la cantidad de "ramas" (Steam) que se quiere utilizar. Como "hojas" del árbol (Leafs), se tiene el residuo de cada observaciòn al realizarse la división entera entre tamaño de muestra y ramas.
Por ejemplo, continuando el ejemplo de las inundaciones producidas por el Nilo, tenemos el siguiente diagrama de árbol de 13 ramas (ancho = 100):
> stem(Nile)
The decimal point is 2 digit(s) to the right of the |
4 | 6
5 |
6 | 5899
7 | 000123444455667778
8 | 000011222233344555556667779
9 | 0011222244466678899
10 | 0122234455
11 | 00012244566678
12 | 112356
13 | 7
La primera observación es 400 + 60 = 460. En el séptimo grupo, puede apreciarse una concentración de valores a izquierda: contiene 10 valores (1 de valor 1000 + 0 =1000, 1 de valor 1000 + 10 =1010, 3 de valor 1000 + 20 =1020, 1 de valor 1000 + 30 =1030, 2 de valor 1000 + 40 =1040, 2 de valor 1000 + 50 =1050), en el rango 1000-1050, peor ninguno en su extremo derecho 1050-1100.
Si se hubiera reducido la cantidad de ramas a 5, obtendríamos:
stem(Nile,scale=5/10)
The decimal point is 2 digit(s) to the right of the |
4 | 6
6 | 5899000123444455667778
8 | 0000112222333445555566677790011222244466678899
10 | 012223445500012244566678
12 | 1123567
Diagramas de cajas
Los diagramas de cajas permiten visualizar aspectos importantes de la muestra con una cantidad reducida de datos.
La "caja" contendrá la mitad de los datos centrales (datos entre percentiles 25 y 75); una línea (mediana o percentil 50) la dividirá. Dos líneas saldrán a los costados de las cajas (denominados habitualmente "whiskers" o bigotes); estas mostrarán el rango de la muestra. Al realizarse el diseño, los programas ya dejan afuera los casos que consideran extraños por estar alejados del resto de las observaciones (habitualmente se toman tres rangos intercuatílicos (percentil 75 - percentil 25) * 3 ).
Por ejemplo, el diagrama de cajas que nos toca con el ejemplo dado es el siguiente:
Código R:
boxplot(Nile, col = "orange", horizontal = TRUE, main="Corrientes del Nilo (1871-1970)", xlab="crecidas en mts")
Con el diagrama de cajas puede apreciarse una distribución bastante simétrica, que está en línea con lo observado en el histograma.
No hay comentarios:
Publicar un comentario