Anova de una Vía


¿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 Levene
Levene'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.

Palomino Morales Edwin

Enero del 2018