Anova de una Vía
Anova de una Vía
- ¿Para qué sirve esta prueba?
- Los Datos
- ¡Manos a la obra!
- Acceder a los datos
- Datos atípicos - outliers
- Datos atípicos: comprueba que no hay valores atípicos significativos en tus datos
- Normalidad de la variable dependiente
- Homogeneidad de varianzas
- Diferencia entre grupos - Prueba Anova
- Pruebas post hoc
- Enlaces bibliográficos
¿Para qué sirve esta prueba?
El análisis de varianza (ANOVA) de una vía se utiliza para determinar si existen diferencias estadísticamente significativas entre las medias de tres o más grupos.
En este caso utilizaremos grupos independientes (no relacionados) por lo que lo llamaremos ANOVA de un factor entre-grupos.
Luego de realizar el ANOVA, si los grupos presentan un comportamiento distinto, podremos determinar entre qué grupos específicos existen diferencias estadísticamente significativas mediante pruebas de comparación múltiple post hoc. máxima información
Los Datos
Los datos corresponden a 48 participantes (24 hombres y 24 mujeres) que se han dividido en 3 grupos de 8 participantes cada uno. Cada grupo asistió a un club nocturno, a un grupo no se le dio alcohol, otro tomó 2 pintas y el último 4 pintas de alcohol. Al final de la noche el investigador tomó una fotografía a la pareja elegida por el participante y un grupo de jueces independientes evaluó el poder de atracción de dicha persona.
La base de datos tiene 3 variables:
- el sexo (variable gender: hombre o mujer),
- el alcohol consumido (variable alcohol: nada, 2 pintas o 4 pintas),
- el nivel de atracción física de la pareja encontrada (variable attractiveness: puntaje de 0 a 100 dado por los jueces)
Tenemos entonces una variable dependiente numérica (attractiveness) y la queremos comparar entre tres niveles de una variable categórica (alcohol) que corresponden a muestras independientes porque son sujetos distintos. Debemos utilizar un ANOVA de una vía o un factor entre-grupos.
Luego de evaluar si existen diferencias entre los grupos, y si obtenemos un resultado estadísticamente significativo (sí hay diferencias), nos interesará evaluar entre qué grupos específicamente encontramos estas diferencias. Para ello utilizaremos la prueba de comparaciones múltiples post hoc.
¡Manos a la obra!
Los primeros pasos de cualquier análisis incluyen realizar un análisis descriptivo y buscar posibles datos atípicos. Si aún no tienes claro estos conceptos te recomiendo que revises nuestras entradas sobre estos temas antes de continuar.
En esta entrada vamos a probar los supuestos de los modelos lineales (normalidad, homogeneidad de varianza e independencia), a realizar el ANOVA de una vía con un factor entre-grupos (calcular el estadístico F y el valor de probabilidad asociado, p-valor) y luego la prueba de comparación múltiple post-hoc.
Acceder a los datos
Para acceder a los datos primero debemos instalar el paquete WRS2 si es que aún no lo tienes instalado en tu ordenador puede hacerlo con la siguiente línea de comando
install.packages("WRS2")Cargamos el DataSet goggles
library(WRS2) #Activar el paquete WRS2
data(goggles) #Cargamos el DataSet
head(goggles) #Mostramos los primera filas del DataSet gender alcohol attractiveness
1 Female None 65
2 Female None 70
3 Female None 60
4 Female None 60
5 Female None 60
6 Female None 55
Revisamos la estructura del DataSet
str(goggles)'data.frame': 48 obs. of 3 variables:
$ gender : Factor w/ 2 levels "Female","Male": 1 1 1 1 1 1 1 1 1 1 ...
$ alcohol : Factor w/ 3 levels "None","2 Pints",..: 1 1 1 1 1 1 1 1 2 2 ...
$ attractiveness: int 65 70 60 60 60 55 60 55 70 65 ...
Estadísticas descriptivas
summary(goggles) gender alcohol attractiveness
Female:24 None :16 Min. :20.00
Male :24 2 Pints:16 1st Qu.:53.75
4 Pints:16 Median :60.00
Mean :58.33
3rd Qu.:66.25
Max. :85.00
Estadísticas descriptivas por grupo
Calculamos el resumen estadístico 2 utilizando el paquete psych si aún no lo tienes instalado aquí en la siguiente linea de comando puede hacerlo
install.packages("psych")library(psych) #Activar el paquete psych
describeBy(goggles$attractiveness, goggles$alcohol)
Descriptive statistics by group
group: None
vars n mean sd median trimmed mad min max range skew kurtosis
X1 1 16 63.75 8.47 62.5 63.57 11.12 50 80 30 0.29 -1.07
se
X1 2.12
--------------------------------------------------------
group: 2 Pints
vars n mean sd median trimmed mad min max range skew kurtosis se
X1 1 16 64.69 9.91 65 64.64 7.41 45 85 40 0.08 -0.23 2.48
--------------------------------------------------------
group: 4 Pints
vars n mean sd median trimmed mad min max range skew kurtosis
X1 1 16 46.56 14.34 50 46.79 14.83 20 70 50 -0.22 -1.21
se
X1 3.59
Datos atípicos - outliers
Un valor atípico es una observación extrañamente grande o pequeña. Los valores atípicos pueden tener un efecto desproporcionado en los resultados estadísticos, como la media, lo que puede conducir a interpretaciones engañosas. valor atípico
Observamos si exiten valor atípicos
Utilizamos el paquete ggplot2 si no lo tienes instalado aquí puedes hacerlo
install.packages("ggplot2")library(ggplot2)
ggplot(data = goggles) +
geom_boxplot(mapping = aes(alcohol, attractiveness, color = alcohol))Según el gráfico de cajas y los estadísticos descriptivos, la selección de pareja según su atractivo físico disminuye para sujetos que beben mucho alcohol
Datos atípicos: comprueba que no hay valores atípicos significativos en tus datos
Los datos atípicos (outliers) influyen negativamente en los resultados del anova para ello vamos a identificar los posibles outliers utilizaremos la función rp.outlier de el paquete rapportools aquí la linea de comandos para instalar.
install.packages("rapportools") library(rapportools) #Activar el paquete rapportools
rp.outlier(goggles[goggles$alcohol == "None", "attractiveness"])NULL
rp.outlier(goggles[goggles$alcohol == "2 Pints", "attractiveness"])NULL
rp.outlier(goggles[goggles$alcohol == "4 Pints", "attractiveness"])NULL
No se dedecto ningun outliers
Normalidad de la variable dependiente
Hipótesis
\(H_{0}\) : Los datos siguen una distribución normal
\(H_{1}\) : Los datos no siguen una distribución normal
Nivel de significancia
\(\alpha = 0.05\)
Estadístico de prueba
\[{\displaystyle W={\left(\sum _{i=1}^{n}a_{i}x_{(i)}\right)^{2} \over \sum _{i=1}^{n}(x_{i}-{\overline {x}})^{2}}}\] #### Cálculo del estadístico de prueba
by(goggles$attractiveness, goggles$alcohol, shapiro.test)goggles$alcohol: None
Shapiro-Wilk normality test
data: dd[x, ]
W = 0.95498, p-value = 0.5725
--------------------------------------------------------
goggles$alcohol: 2 Pints
Shapiro-Wilk normality test
data: dd[x, ]
W = 0.94489, p-value = 0.4132
--------------------------------------------------------
goggles$alcohol: 4 Pints
Shapiro-Wilk normality test
data: dd[x, ]
W = 0.952, p-value = 0.522
Se puede observar que los tres grupos de la variable attractiveness siguen una distribución normal.
Gráfico qqnorm
by(goggles$attractiveness, goggles$alcohol, qqnorm)goggles$alcohol: None
$x
[1] 0.07841241 0.57913216 -0.57913216 -0.40225007 -0.23720211
[6] -1.31801090 -0.07841241 -1.00999017 -1.86273187 -0.77642176
[11] 1.86273187 0.23720211 0.77642176 1.00999017 1.31801090
[16] 0.40225007
$y
[1] 65 70 60 60 60 55 60 55 50 55 80 65 70 75 75 65
--------------------------------------------------------
goggles$alcohol: 2 Pints
$x
[1] 0.40225007 -0.07841241 -1.00999017 0.57913216 0.07841241
[6] -0.77642176 -0.57913216 -1.31801090 -1.86273187 -0.40225007
[11] 1.86273187 0.23720211 0.77642176 1.00999017 1.31801090
[16] -0.23720211
$y
[1] 70 65 60 70 65 60 60 50 45 60 85 65 70 70 80 60
--------------------------------------------------------
goggles$alcohol: 4 Pints
$x
[1] 0.23720211 1.31801090 1.86273187 0.40225007 0.57913216
[6] 1.00999017 -0.07841241 0.07841241 -1.31801090 -1.00999017
[11] -0.77642176 0.77642176 -0.57913216 -1.86273187 -0.23720211
[16] -0.40225007
$y
[1] 55 65 70 55 55 60 50 50 30 30 30 55 35 20 45 40
Homogeneidad de varianzas
Es una prueba estadística inferencial utilizada para evaluar la igualdad de las varianzas para una variable calculada para dos o más grupos. Algunos procedimientos estadísticos comunes asumen que las varianzas de las poblaciones de las que se extraen diferentes muestras son iguales. La prueba de Levene evalúa este supuesto Prueba de Levene
\[{\displaystyle W={\frac {(N-k)}{(k-1)}}{\frac {\sum _{i=1}^{k}N_{i}(Z_{i\cdot }-Z_{\cdot \cdot })^{2}}{\sum _{i=1}^{k}\sum _{j=1}^{N_{i}}(Z_{ij}-Z_{i\cdot })^{2}}},}\]
library(car)
leveneTest(goggles$attractiveness, goggles$alcohol) #Prueba de LeveneLevene's Test for Homogeneity of Variance (center = median)
Df F value Pr(>F)
group 2 2.3238 0.1095
45
Bartlett test of homogeneity of variances
data: goggles$attractiveness and goggles$alcohol
Bartlett's K-squared = 4.4295, df = 2, p-value = 0.1092
Se observa que p_valor > \(\alpha\) = 0.05 es decir la varianzas son homogeneas no existe el problema de heterocedasticidad
Diferencia entre grupos - Prueba Anova
Hipótesis
\(H_{0}\) : El atractivo físico de las parejas de sujetos con distinto consumo de alcohol es similar
\(H_{1}\) : Algun atractivo físico de las parejas de sujetos con distinto consumo de alcohol es diferente
Nivel de significancia
\(\alpha = 0.05\)
anova <- aov(attractiveness ~ alcohol, data = goggles)
summary(anova) Df Sum Sq Mean Sq F value Pr(>F)
alcohol 2 3332 1666.1 13.31 2.88e-05 ***
Residuals 45 5634 125.2
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Existen diferencias estadísticamente significativas entre los grupos de consumo de alcohol \((F(2,45) = 13.31, p < 0.05)\).
Pruebas post hoc
Como hemos detectado diferencias entre los grupos, nos preguntamos específicamente qué grupos son significativamente distintos. Para ello utilizamos la prueba de comparación múltiple post hoc de Tukey
TukeyHSD(anova) Tukey multiple comparisons of means
95% family-wise confidence level
Fit: aov(formula = attractiveness ~ alcohol, data = goggles)
$alcohol
diff lwr upr p adj
2 Pints-None 0.9375 -8.650654 10.525654 0.9695381
4 Pints-None -17.1875 -26.775654 -7.599346 0.0002283
4 Pints-2 Pints -18.1250 -27.713154 -8.536846 0.0001067
Encontramos que existen diferencias entre 4 Pints-None y 4 Pints-2 Pints \((p < 0.001)\), pero no entre 2 Pints-None.