ANOVA de dos factores

9/11/2020

Cargar data


data <- read.csv("PROBLEMA.csv", sep = ";")

Estadísticos descriptivos

with(data, tapply(TIEMPO, list(PROBLEMA), mean))
## ALGEBRAICO ARITMETICO GEOMETRICO 
##  107.50000   83.16667  120.33333
with(data, tapply(TIEMPO, list(CONDICION), mean))
##    MUSICA    NORMAL     RUIDO 
## 102.00000  64.16667 144.83333
with(data, tapply(TIEMPO, list(CONDICION, PROBLEMA), mean))
##        ALGEBRAICO ARITMETICO GEOMETRICO
## MUSICA     117.25      57.25      131.5
## NORMAL      49.50      57.50       85.5
## RUIDO      155.75     134.75      144.0

ANOVA con efecto aditivo


modelo <- aov(TIEMPO ~ CONDICION + PROBLEMA, data)

summary(modelo)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## CONDICION    2  39093   19546  23.434 6.31e-07 ***
## PROBLEMA     2   8553    4276   5.127   0.0119 *  
## Residuals   31  25857     834                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

ANOVA con efecto INTERACTIVO


modelo <- aov(TIEMPO ~ CONDICION + PROBLEMA + CONDICION:PROBLEMA , data)

summary(modelo)
##                    Df Sum Sq Mean Sq F value   Pr(>F)    
## CONDICION           2  39093   19546  28.929 1.93e-07 ***
## PROBLEMA            2   8553    4276   6.329  0.00557 ** 
## CONDICION:PROBLEMA  4   7614    1903   2.817  0.04486 *  
## Residuals          27  18243     676                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Box plot


:::{.fullwidth}

library(ggplot2)

ggplot(data, aes(x=CONDICION, y=TIEMPO, fill=PROBLEMA)) +  geom_boxplot()


Análisis de residuos

plot(modelo,1)

plot(modelo,2)

TukeyHSD(modelo)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = TIEMPO ~ CONDICION + PROBLEMA + CONDICION:PROBLEMA, data = data)
## 
## $CONDICION
##                    diff       lwr       upr     p adj
## NORMAL-MUSICA -37.83333 -64.14451 -11.52215 0.0038220
## RUIDO-MUSICA   42.83333  16.52215  69.14451 0.0011343
## RUIDO-NORMAL   80.66667  54.35549 106.97785 0.0000001
## 
## $PROBLEMA
##                            diff       lwr       upr     p adj
## ARITMETICO-ALGEBRAICO -24.33333 -50.64451  1.977846 0.0739731
## GEOMETRICO-ALGEBRAICO  12.83333 -13.47785 39.144513 0.4580289
## GEOMETRICO-ARITMETICO  37.16667  10.85549 63.477846 0.0044796
## 
## $`CONDICION:PROBLEMA`
##                                       diff         lwr        upr     p adj
## NORMAL:ALGEBRAICO-MUSICA:ALGEBRAICO -67.75 -129.593951  -5.906049 0.0238748
## RUIDO:ALGEBRAICO-MUSICA:ALGEBRAICO   38.50  -23.343951 100.343951 0.4969851
## MUSICA:ARITMETICO-MUSICA:ALGEBRAICO -60.00 -121.843951   1.843951 0.0623993
## NORMAL:ARITMETICO-MUSICA:ALGEBRAICO -59.75 -121.593951   2.093951 0.0642772
## RUIDO:ARITMETICO-MUSICA:ALGEBRAICO   17.50  -44.343951  79.343951 0.9872250
## MUSICA:GEOMETRICO-MUSICA:ALGEBRAICO  14.25  -47.593951  76.093951 0.9967007
## NORMAL:GEOMETRICO-MUSICA:ALGEBRAICO -31.75  -93.593951  30.093951 0.7254121
## RUIDO:GEOMETRICO-MUSICA:ALGEBRAICO   26.75  -35.093951  88.593951 0.8656860
## RUIDO:ALGEBRAICO-NORMAL:ALGEBRAICO  106.25   44.406049 168.093951 0.0001157
## MUSICA:ARITMETICO-NORMAL:ALGEBRAICO   7.75  -54.093951  69.593951 0.9999615
## NORMAL:ARITMETICO-NORMAL:ALGEBRAICO   8.00  -53.843951  69.843951 0.9999509
## RUIDO:ARITMETICO-NORMAL:ALGEBRAICO   85.25   23.406049 147.093951 0.0022440
## MUSICA:GEOMETRICO-NORMAL:ALGEBRAICO  82.00   20.156049 143.843951 0.0035264
## NORMAL:GEOMETRICO-NORMAL:ALGEBRAICO  36.00  -25.843951  97.843951 0.5823619
## RUIDO:GEOMETRICO-NORMAL:ALGEBRAICO   94.50   32.656049 156.343951 0.0006105
## MUSICA:ARITMETICO-RUIDO:ALGEBRAICO  -98.50 -160.343951 -36.656049 0.0003465
## NORMAL:ARITMETICO-RUIDO:ALGEBRAICO  -98.25 -160.093951 -36.406049 0.0003590
## RUIDO:ARITMETICO-RUIDO:ALGEBRAICO   -21.00  -82.843951  40.843951 0.9617137
## MUSICA:GEOMETRICO-RUIDO:ALGEBRAICO  -24.25  -86.093951  37.593951 0.9166602
## NORMAL:GEOMETRICO-RUIDO:ALGEBRAICO  -70.25 -132.093951  -8.406049 0.0172609
## RUIDO:GEOMETRICO-RUIDO:ALGEBRAICO   -11.75  -73.593951  50.093951 0.9991484
## NORMAL:ARITMETICO-MUSICA:ARITMETICO   0.25  -61.593951  62.093951 1.0000000
## RUIDO:ARITMETICO-MUSICA:ARITMETICO   77.50   15.656049 139.343951 0.0065444
## MUSICA:GEOMETRICO-MUSICA:ARITMETICO  74.25   12.406049 136.093951 0.0101560
## NORMAL:GEOMETRICO-MUSICA:ARITMETICO  28.25  -33.593951  90.093951 0.8284442
## RUIDO:GEOMETRICO-MUSICA:ARITMETICO   86.75   24.906049 148.593951 0.0018193
## RUIDO:ARITMETICO-NORMAL:ARITMETICO   77.25   15.406049 139.093951 0.0067710
## MUSICA:GEOMETRICO-NORMAL:ARITMETICO  74.00   12.156049 135.843951 0.0105021
## NORMAL:GEOMETRICO-NORMAL:ARITMETICO  28.00  -33.843951  89.843951 0.8349765
## RUIDO:GEOMETRICO-NORMAL:ARITMETICO   86.50   24.656049 148.343951 0.0018841
## MUSICA:GEOMETRICO-RUIDO:ARITMETICO   -3.25  -65.093951  58.593951 1.0000000
## NORMAL:GEOMETRICO-RUIDO:ARITMETICO  -49.25 -111.093951  12.593951 0.2019814
## RUIDO:GEOMETRICO-RUIDO:ARITMETICO     9.25  -52.593951  71.093951 0.9998531
## NORMAL:GEOMETRICO-MUSICA:GEOMETRICO -46.00 -107.843951  15.843951 0.2743288
## RUIDO:GEOMETRICO-MUSICA:GEOMETRICO   12.50  -49.343951  74.343951 0.9986755
## RUIDO:GEOMETRICO-NORMAL:GEOMETRICO   58.50   -3.343951 120.343951 0.0744413
ggplot(data, aes(x = PROBLEMA , y = TIEMPO, colour = CONDICION, group = CONDICION)) +
    stat_summary(fun = mean, geom = "point") +
    stat_summary(fun = mean, geom = "line")

Ejercicio propuesto (Calderon, 2010)

En un estudio del comportamiento de compradores en un supermercado, se pensaba que la cantidad vendida de un producto dependía de su ubicación en los estantes del establecimiento y de si el producto era de antigua data en el mercado o si era desconocido o de reciente introducción. Se ensayó con una barra de chocolate, en dos ubicaciones distintas y de dos marcas distintas, una de las cuales era muy conocida y la otra reciente. Los datos están en el archivo COMPORTAMIENTO.SAV.

Preguntas

  1. Aplique ANOVA Two Way de efectos fijos, con las variables PROD y UBICA como factores y VENTAS como variable respuesta. Pida estadísticos y gráfico de medias de VENTAS según PROD (“Conocido”/“No conocido”) y UBICA(“Usual/Prominente”). Determine si hay efecto de factores y de interacción. ¿Es uniforme el efecto de Ubicación según que el producto sea conocido o no?

  2. Evalúe si los productos conocidos y bien ubicados son más vendidos que los recientes y con ubicación normal

Desarrollo


library(foreign)

datos <- read.spss("Comportamiento.sav", to.data.frame=T)
## re-encoding from UTF-8

Inspección de data


head(datos)
##   caso     prod           ubica ventas
## 1    1 Conocido Ubicación usual      8
## 2    2 Conocido Ubicación usual      6
## 3    3 Conocido Ubicación usual      4
## 4    4 Conocido Ubicación usual      6
## 5    5 Conocido Ubicación usual      7
## 6    6 Conocido Ubicación usual      6

Estadísticos descriptivos


with(datos, tapply(ventas, list(prod), mean))
##               Conocido Desconocido o reciente 
##                   12.9                    9.5
with(datos, tapply(ventas, list(ubica), mean))
##      Ubicación usual Ubicación prominente 
##                 6.75                15.65
with(datos, tapply(ventas, list(prod, ubica), mean))
##                        Ubicación usual Ubicación prominente
## Conocido                           6.5                 19.3
## Desconocido o reciente             7.0                 12.0

ANOVA con efecto aditivo


modelo2 <- aov(ventas ~ prod + ubica, datos)

summary(modelo2)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## prod         1  115.6   115.6   10.95   0.0021 ** 
## ubica        1  792.1   792.1   75.01 1.98e-10 ***
## Residuals   37  390.7    10.6                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

ANOVA con efecto INTERACTIVO


modelo3 <- aov(ventas ~ prod + ubica + prod:ubica  , datos)

summary(modelo3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## prod         1  115.6   115.6   17.44  0.00018 ***
## ubica        1  792.1   792.1  119.51 5.45e-13 ***
## prod:ubica   1  152.1   152.1   22.95 2.84e-05 ***
## Residuals   36  238.6     6.6                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Box plot


library(ggplot2)

ggplot(datos, aes(x=prod, y= ventas, fill = ubica )) +  geom_boxplot()


Análisis de residuos


plot(modelo3,1)

plot(modelo3,2)


TukeyHSD(modelo3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = ventas ~ prod + ubica + prod:ubica, data = datos)
## 
## $prod
##                                 diff       lwr       upr     p adj
## Desconocido o reciente-Conocido -3.4 -5.051095 -1.748905 0.0001796
## 
## $ubica
##                                      diff      lwr      upr p adj
## Ubicación prominente-Ubicación usual  8.9 7.248905 10.55109     0
## 
## $`prod:ubica`
##                                                                                    diff
## Desconocido o reciente:Ubicación usual-Conocido:Ubicación usual                     0.5
## Conocido:Ubicación prominente-Conocido:Ubicación usual                             12.8
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación usual                5.5
## Conocido:Ubicación prominente-Desconocido o reciente:Ubicación usual               12.3
## Desconocido o reciente:Ubicación prominente-Desconocido o reciente:Ubicación usual  5.0
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación prominente          -7.3
##                                                                                           lwr
## Desconocido o reciente:Ubicación usual-Conocido:Ubicación usual                     -2.600787
## Conocido:Ubicación prominente-Conocido:Ubicación usual                               9.699213
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación usual                 2.399213
## Conocido:Ubicación prominente-Desconocido o reciente:Ubicación usual                 9.199213
## Desconocido o reciente:Ubicación prominente-Desconocido o reciente:Ubicación usual   1.899213
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación prominente          -10.400787
##                                                                                          upr
## Desconocido o reciente:Ubicación usual-Conocido:Ubicación usual                     3.600787
## Conocido:Ubicación prominente-Conocido:Ubicación usual                             15.900787
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación usual                8.600787
## Conocido:Ubicación prominente-Desconocido o reciente:Ubicación usual               15.400787
## Desconocido o reciente:Ubicación prominente-Desconocido o reciente:Ubicación usual  8.100787
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación prominente          -4.199213
##                                                                                        p adj
## Desconocido o reciente:Ubicación usual-Conocido:Ubicación usual                    0.9721659
## Conocido:Ubicación prominente-Conocido:Ubicación usual                             0.0000000
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación usual               0.0001679
## Conocido:Ubicación prominente-Desconocido o reciente:Ubicación usual               0.0000000
## Desconocido o reciente:Ubicación prominente-Desconocido o reciente:Ubicación usual 0.0006099
## Desconocido o reciente:Ubicación prominente-Conocido:Ubicación prominente          0.0000014

Gráfico de medias


ggplot(datos, aes(x = ubica, y = ventas, colour = prod, group = prod)) +
    stat_summary(fun = mean, geom = "point") +
    stat_summary(fun = mean, geom = "line")