El Diseño Completamente Aleatorizado (DCA) permite comparar distintos tratamientos cuando las unidades experimentales se encuentran en condiciones similares. La asignación de los tratamientos se realiza al azar y cada uno cuenta con varias repeticiones, lo que permite estimar el error experimental y estudiar las diferencias entre los resultados.
Entre sus aspectos principales se encuentran:
Se estudió la percepción sensorial de tres marcas de café: Café Tostao, Café Viejo Molino y Café Colcafé. La evaluación consideró dos características: aroma y sabor. Para cada marca se registraron seis calificaciones por característica, correspondientes a seis repeticiones por tratamiento. Las puntuaciones se asignaron en una escala de 1 a 10, donde 1 representa una valoración muy baja y 10 una valoración excelente.
Los datos de aroma y sabor se analizarán de manera independiente, pero dentro de un mismo documento y mediante el mismo Diseño Completamente Aleatorizado (DCA). De esta manera, será posible comparar las marcas para cada característica sensorial sin mezclar las dos variables de respuesta.
En esta etapa se organizan las seis calificaciones registradas para cada marca de café. También se calculan la suma y el promedio de las puntuaciones para facilitar la comparación inicial.
library(printr)
Tratamientos_aroma <- c("Café Tostao",
"Café Viejo Molino",
"Café Colcafé")
r1_aroma <- c(8, 7, 9)
r2_aroma <- c(9, 8, 8)
r3_aroma <- c(8, 7, 10)
r4_aroma <- c(9, 6, 9)
r5_aroma <- c(10, 8, 8)
r6_aroma <- c(8, 7, 10)
replicas_aroma <- cbind(r1_aroma, r2_aroma, r3_aroma,
r4_aroma, r5_aroma, r6_aroma)
Total_aroma <- rowSums(replicas_aroma)
medias_aroma <- Total_aroma / 6
Tabla_aroma <- data.frame(Tratamientos_aroma,
replicas_aroma,
Total_aroma,
medias_aroma)
names(Tabla_aroma) <- c("Tratamientos", "Réplica 1", "Réplica 2",
"Réplica 3", "Réplica 4", "Réplica 5",
"Réplica 6", "Total", "Media")
Tabla_aroma
| Tratamientos | Réplica 1 | Réplica 2 | Réplica 3 | Réplica 4 | Réplica 5 | Réplica 6 | Total | Media |
|---|---|---|---|---|---|---|---|---|
| Café Tostao | 8 | 9 | 8 | 9 | 10 | 8 | 52 | 8.666667 |
| Café Viejo Molino | 7 | 8 | 7 | 6 | 8 | 7 | 43 | 7.166667 |
| Café Colcafé | 9 | 8 | 10 | 9 | 8 | 10 | 54 | 9.000000 |
Las calificaciones se organizan en una variable de respuesta y otra variable categórica que identifica la marca de café correspondiente a cada observación.
cafe_aroma <- factor(rep(c("Café Tostao",
"Café Viejo Molino",
"Café Colcafé"), each = 6))
y_aroma <- c(8, 9, 8, 9, 10, 8,
7, 8, 7, 6, 8, 7,
9, 8, 10, 9, 8, 10)
DATA_aroma <- data.frame(cafe_aroma, y_aroma)
DATA_aroma
| cafe_aroma | y_aroma |
|---|---|
| Café Tostao | 8 |
| Café Tostao | 9 |
| Café Tostao | 8 |
| Café Tostao | 9 |
| Café Tostao | 10 |
| Café Tostao | 8 |
| Café Viejo Molino | 7 |
| Café Viejo Molino | 8 |
| Café Viejo Molino | 7 |
| Café Viejo Molino | 6 |
| Café Viejo Molino | 8 |
| Café Viejo Molino | 7 |
| Café Colcafé | 9 |
| Café Colcafé | 8 |
| Café Colcafé | 10 |
| Café Colcafé | 9 |
| Café Colcafé | 8 |
| Café Colcafé | 10 |
El diagrama de cajas permite observar la distribución de las puntuaciones de cada marca, comparar sus medianas y reconocer la dispersión de los datos registrados para el aroma.
boxplot(y_aroma ~ cafe_aroma,
col = "green",
main = "Comparación de las calificaciones del aroma",
xlab = "Marcas de café",
ylab = "Calificación del aroma",
ylim = c(1, 10))
Se aplica un análisis de varianza para determinar si existen diferencias estadísticamente significativas entre las calificaciones promedio del aroma de las tres marcas de café.
modelo_aroma <- lm(y_aroma ~ cafe_aroma)
anova_aroma <- aov(modelo_aroma)
summary(modelo_aroma)
##
## Call:
## lm(formula = y_aroma ~ cafe_aroma)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.16667 -0.66667 -0.08333 0.70833 1.33333
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 9.0000 0.3361 26.778 4.44e-14 ***
## cafe_aromaCafé Tostao -0.3333 0.4753 -0.701 0.49386
## cafe_aromaCafé Viejo Molino -1.8333 0.4753 -3.857 0.00155 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.8233 on 15 degrees of freedom
## Multiple R-squared: 0.5296, Adjusted R-squared: 0.4668
## F-statistic: 8.443 on 2 and 15 DF, p-value: 0.003498
summary(anova_aroma)
## Df Sum Sq Mean Sq F value Pr(>F)
## cafe_aroma 2 11.44 5.722 8.443 0.0035 **
## Residuals 15 10.17 0.678
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
La prueba LSD permite contrastar los promedios de los tratamientos y formar grupos de marcas que presentan o no diferencias significativas.
library(agricolae)
LSD.test(modelo_aroma, "cafe_aroma",
group = TRUE,
console = TRUE,
main = "Comparación LSD de las calificaciones del aroma")
##
## Study: Comparación LSD de las calificaciones del aroma
##
## LSD t Test for y_aroma
##
## Mean Square Error: 0.6777778
##
## cafe_aroma, means and individual ( 95 %) CI
##
## y_aroma std r se LCL UCL Min Max Q25
## Café Colcafé 9.000000 0.8944272 6 0.3360996 8.283621 9.716379 8 10 8.25
## Café Tostao 8.666667 0.8164966 6 0.3360996 7.950287 9.383046 8 10 8.00
## Café Viejo Molino 7.166667 0.7527727 6 0.3360996 6.450287 7.883046 6 8 7.00
## Q50 Q75
## Café Colcafé 9.0 9.75
## Café Tostao 8.5 9.00
## Café Viejo Molino 7.0 7.75
##
## Alpha: 0.05 ; DF Error: 15
## Critical Value of t: 2.13145
##
## least Significant Difference: 1.013113
##
## Treatments with the same letter are not significantly different.
##
## y_aroma groups
## Café Colcafé 9.000000 a
## Café Tostao 8.666667 a
## Café Viejo Molino 7.166667 b
La prueba de Tukey compara los tratamientos por pares y ajusta las comparaciones para controlar el error asociado al análisis múltiple. Se utiliza un nivel de confianza del 95 %.
tukey_aroma <- TukeyHSD(anova_aroma, "cafe_aroma",
conf.level = 0.95)
plot(tukey_aroma)
tukey_aroma
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = modelo_aroma)
##
## $cafe_aroma
## diff lwr upr p adj
## Café Tostao-Café Colcafé -0.3333333 -1.567954 0.9012875 0.7663903
## Café Viejo Molino-Café Colcafé -1.8333333 -3.067954 -0.5987125 0.0041614
## Café Viejo Molino-Café Tostao -1.5000000 -2.734621 -0.2653791 0.0169072
El procedimiento de Duncan permite ordenar los tratamientos de acuerdo con sus medias y establecer grupos estadísticos. Las marcas que comparten una misma letra no presentan diferencias significativas bajo el nivel de significancia utilizado.
duncan.test(modelo_aroma, "cafe_aroma",
group = TRUE,
console = TRUE,
main = "Agrupación de las marcas según el aroma")
##
## Study: Agrupación de las marcas según el aroma
##
## Duncan's new multiple range test
## for y_aroma
##
## Mean Square Error: 0.6777778
##
## cafe_aroma, means
##
## y_aroma std r se Min Max Q25 Q50 Q75
## Café Colcafé 9.000000 0.8944272 6 0.3360996 8 10 8.25 9.0 9.75
## Café Tostao 8.666667 0.8164966 6 0.3360996 8 10 8.00 8.5 9.00
## Café Viejo Molino 7.166667 0.7527727 6 0.3360996 6 8 7.00 7.0 7.75
##
## Alpha: 0.05 ; DF Error: 15
##
## Critical Range
## 2 3
## 1.013113 1.062016
##
## Means with the same letter are not significantly different.
##
## y_aroma groups
## Café Colcafé 9.000000 a
## Café Tostao 8.666667 a
## Café Viejo Molino 7.166667 b
Los residuos representan las diferencias entre las calificaciones observadas y los valores estimados por el modelo. Su revisión permite examinar el cumplimiento de los supuestos necesarios para interpretar el análisis de varianza.
library(car)
## Cargando paquete requerido: carData
residuos_aroma <- residuals(modelo_aroma)
residuos_aroma
## 1 2 3 4 5
## -6.666667e-01 3.333333e-01 -6.666667e-01 3.333333e-01 1.333333e+00
## 6 7 8 9 10
## -6.666667e-01 -1.666667e-01 8.333333e-01 -1.666667e-01 -1.166667e+00
## 11 12 13 14 15
## 8.333333e-01 -1.666667e-01 -1.942890e-16 -1.000000e+00 1.000000e+00
## 16 17 18
## -1.942890e-16 -1.000000e+00 1.000000e+00
sort(residuos_aroma)
## 10 14 17 3 6
## -1.166667e+00 -1.000000e+00 -1.000000e+00 -6.666667e-01 -6.666667e-01
## 1 7 9 12 13
## -6.666667e-01 -1.666667e-01 -1.666667e-01 -1.666667e-01 -1.942890e-16
## 16 2 4 8 11
## -1.942890e-16 3.333333e-01 3.333333e-01 8.333333e-01 8.333333e-01
## 15 18 5
## 1.000000e+00 1.000000e+00 1.333333e+00
El gráfico Q-Q permite comparar los cuantiles observados de los residuos con los cuantiles teóricos de una distribución normal. Una disposición aproximadamente lineal de los puntos es compatible con el supuesto de normalidad.
qqnorm(residuos_aroma,
main = "Gráfico Q-Q de los residuos del aroma")
qqline(residuos_aroma)
qqPlot(residuos_aroma, pch = 10)
## [1] 5 10
Esta representación permite observar si los errores se distribuyen de manera aleatoria alrededor de cero o si presentan algún patrón que pueda indicar problemas en el ajuste del modelo.
plot(modelo_aroma$fitted.values, residuos_aroma,
main = "Residuos frente a valores ajustados del aroma",
xlab = "Valores ajustados",
ylab = "Residuos",
pch = 20)
abline(h = 0, lty = 2)
Los gráficos de diagnóstico reúnen distintas representaciones que ayudan a examinar el comportamiento de los residuos, posibles observaciones influyentes y la adecuación general del modelo.
par(mfrow = c(2, 2))
plot(modelo_aroma)
par(mfrow = c(1, 1))
data2_aroma <- data.frame(cafe_aroma, residuos_aroma)
data2_aroma
| cafe_aroma | residuos_aroma |
|---|---|
| Café Tostao | -0.6666667 |
| Café Tostao | 0.3333333 |
| Café Tostao | -0.6666667 |
| Café Tostao | 0.3333333 |
| Café Tostao | 1.3333333 |
| Café Tostao | -0.6666667 |
| Café Viejo Molino | -0.1666667 |
| Café Viejo Molino | 0.8333333 |
| Café Viejo Molino | -0.1666667 |
| Café Viejo Molino | -1.1666667 |
| Café Viejo Molino | 0.8333333 |
| Café Viejo Molino | -0.1666667 |
| Café Colcafé | 0.0000000 |
| Café Colcafé | -1.0000000 |
| Café Colcafé | 1.0000000 |
| Café Colcafé | 0.0000000 |
| Café Colcafé | -1.0000000 |
| Café Colcafé | 1.0000000 |
La homogeneidad de varianzas supone que la variabilidad de las calificaciones es comparable entre los tratamientos. Para examinar este supuesto se analizan los residuos absolutos y se aplica la prueba de Levene.
mod1_aroma <- lm(abs(residuos_aroma) ~ cafe_aroma)
anv1_aroma <- aov(mod1_aroma)
summary(anv1_aroma)
## Df Sum Sq Mean Sq F value Pr(>F)
## cafe_aroma 2 0.0494 0.02469 0.124 0.884
## Residuals 15 2.9815 0.19877
leveneTest(residuos_aroma ~ cafe_aroma,
center = mean,
data = data2_aroma)
| Df | F value | Pr(>F) | |
|---|---|---|---|
| group | 2 | 0.1242236 | 0.8840815 |
| 15 | NA | NA |
La prueba de Shapiro-Wilk permite evaluar si los residuos se apartan significativamente de una distribución normal. Un valor p superior a 0.05 indica que no se encuentra evidencia estadística suficiente para rechazar la hipótesis de normalidad.
shapiro.test(residuos_aroma)
##
## Shapiro-Wilk normality test
##
## data: residuos_aroma
## W = 0.94337, p-value = 0.3305
Como complemento, se presenta la prueba de Kolmogorov-Smirnov para comparar la distribución empírica de los residuos con una distribución normal cuyos parámetros se estiman a partir de los mismos datos. Esta salida se conserva como referencia del ejercicio; debido a la estimación de los parámetros y a la presencia de valores repetidos, no debe considerarse una prueba formal de normalidad.
ks.test(residuos_aroma, "pnorm",
mean = mean(residuos_aroma),
sd = sd(residuos_aroma))
## Warning in ks.test.default(residuos_aroma, "pnorm", mean =
## mean(residuos_aroma), : ties should not be present for the one-sample
## Kolmogorov-Smirnov test
##
## Asymptotic one-sample Kolmogorov-Smirnov test
##
## data: residuos_aroma
## D = 0.13901, p-value = 0.8775
## alternative hypothesis: two-sided
Se organizan las seis calificaciones del sabor registradas para cada marca de café. Al igual que en el análisis anterior, se calculan la suma y el promedio de las puntuaciones para facilitar la comparación entre tratamientos.
Tratamientos_sabor <- c("Café Tostao",
"Café Viejo Molino",
"Café Colcafé")
r1_sabor <- c(9, 7, 10)
r2_sabor <- c(8, 6, 9)
r3_sabor <- c(9, 8, 9)
r4_sabor <- c(8, 7, 10)
r5_sabor <- c(10, 7, 8)
r6_sabor <- c(9, 8, 9)
replicas_sabor <- cbind(r1_sabor, r2_sabor, r3_sabor,
r4_sabor, r5_sabor, r6_sabor)
Total_sabor <- rowSums(replicas_sabor)
medias_sabor <- Total_sabor / 6
Tabla_sabor <- data.frame(Tratamientos_sabor,
replicas_sabor,
Total_sabor,
medias_sabor)
names(Tabla_sabor) <- c("Tratamientos", "Réplica 1", "Réplica 2",
"Réplica 3", "Réplica 4", "Réplica 5",
"Réplica 6", "Total", "Media")
Tabla_sabor
| Tratamientos | Réplica 1 | Réplica 2 | Réplica 3 | Réplica 4 | Réplica 5 | Réplica 6 | Total | Media |
|---|---|---|---|---|---|---|---|---|
| Café Tostao | 9 | 8 | 9 | 8 | 10 | 9 | 53 | 8.833333 |
| Café Viejo Molino | 7 | 6 | 8 | 7 | 7 | 8 | 43 | 7.166667 |
| Café Colcafé | 10 | 9 | 9 | 10 | 8 | 9 | 55 | 9.166667 |
Las calificaciones se organizan en una variable de respuesta y otra variable categórica que identifica la marca de café correspondiente a cada observación.
cafe_sabor <- factor(rep(c("Café Tostao",
"Café Viejo Molino",
"Café Colcafé"), each = 6))
y_sabor <- c(9, 8, 9, 8, 10, 9,
7, 6, 8, 7, 7, 8,
10, 9, 9, 10, 8, 9)
DATA_sabor <- data.frame(cafe_sabor, y_sabor)
DATA_sabor
| cafe_sabor | y_sabor |
|---|---|
| Café Tostao | 9 |
| Café Tostao | 8 |
| Café Tostao | 9 |
| Café Tostao | 8 |
| Café Tostao | 10 |
| Café Tostao | 9 |
| Café Viejo Molino | 7 |
| Café Viejo Molino | 6 |
| Café Viejo Molino | 8 |
| Café Viejo Molino | 7 |
| Café Viejo Molino | 7 |
| Café Viejo Molino | 8 |
| Café Colcafé | 10 |
| Café Colcafé | 9 |
| Café Colcafé | 9 |
| Café Colcafé | 10 |
| Café Colcafé | 8 |
| Café Colcafé | 9 |
El diagrama de cajas permite observar la distribución de las puntuaciones de cada marca, comparar sus medianas y reconocer la dispersión de los datos registrados para el sabor.
boxplot(y_sabor ~ cafe_sabor,
col = "green",
main = "Comparación de las calificaciones del sabor",
xlab = "Marcas de café",
ylab = "Calificación del sabor",
ylim = c(1, 10))
Se aplica un análisis de varianza para determinar si existen diferencias estadísticamente significativas entre las calificaciones promedio del sabor de las tres marcas de café.
modelo_sabor <- lm(y_sabor ~ cafe_sabor)
anova_sabor <- aov(modelo_sabor)
summary(modelo_sabor)
##
## Call:
## lm(formula = y_sabor ~ cafe_sabor)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.1667 -0.1667 -0.1667 0.6667 1.1667
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 9.1667 0.3073 29.828 9.05e-15 ***
## cafe_saborCafé Tostao -0.3333 0.4346 -0.767 0.455005
## cafe_saborCafé Viejo Molino -2.0000 0.4346 -4.602 0.000346 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.7528 on 15 degrees of freedom
## Multiple R-squared: 0.6185, Adjusted R-squared: 0.5676
## F-statistic: 12.16 on 2 and 15 DF, p-value: 0.0007271
summary(anova_sabor)
## Df Sum Sq Mean Sq F value Pr(>F)
## cafe_sabor 2 13.78 6.889 12.16 0.000727 ***
## Residuals 15 8.50 0.567
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
La prueba LSD permite contrastar los promedios de los tratamientos y formar grupos de marcas que presentan o no diferencias significativas.
LSD.test(modelo_sabor, "cafe_sabor",
group = TRUE,
console = TRUE,
main = "Comparación LSD de las calificaciones del sabor")
##
## Study: Comparación LSD de las calificaciones del sabor
##
## LSD t Test for y_sabor
##
## Mean Square Error: 0.5666667
##
## cafe_sabor, means and individual ( 95 %) CI
##
## y_sabor std r se LCL UCL Min Max Q25
## Café Colcafé 9.166667 0.7527727 6 0.3073181 8.511634 9.821700 8 10 9.00
## Café Tostao 8.833333 0.7527727 6 0.3073181 8.178300 9.488366 8 10 8.25
## Café Viejo Molino 7.166667 0.7527727 6 0.3073181 6.511634 7.821700 6 8 7.00
## Q50 Q75
## Café Colcafé 9 9.75
## Café Tostao 9 9.00
## Café Viejo Molino 7 7.75
##
## Alpha: 0.05 ; DF Error: 15
## Critical Value of t: 2.13145
##
## least Significant Difference: 0.9263567
##
## Treatments with the same letter are not significantly different.
##
## y_sabor groups
## Café Colcafé 9.166667 a
## Café Tostao 8.833333 a
## Café Viejo Molino 7.166667 b
La prueba de Tukey compara los tratamientos por pares y ajusta las comparaciones para controlar el error asociado al análisis múltiple. Se utiliza un nivel de confianza del 95 %.
tukey_sabor <- TukeyHSD(anova_sabor, "cafe_sabor",
conf.level = 0.95)
plot(tukey_sabor)
tukey_sabor
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = modelo_sabor)
##
## $cafe_sabor
## diff lwr upr p adj
## Café Tostao-Café Colcafé -0.3333333 -1.462229 0.7955623 0.7282733
## Café Viejo Molino-Café Colcafé -2.0000000 -3.128896 -0.8711044 0.0009486
## Café Viejo Molino-Café Tostao -1.6666667 -2.795562 -0.5377711 0.0043512
El procedimiento de Duncan permite ordenar los tratamientos de acuerdo con sus medias y establecer grupos estadísticos. Las marcas que comparten una misma letra no presentan diferencias significativas bajo el nivel de significancia utilizado.
duncan.test(modelo_sabor, "cafe_sabor",
group = TRUE,
console = TRUE,
main = "Agrupación de las marcas según el sabor")
##
## Study: Agrupación de las marcas según el sabor
##
## Duncan's new multiple range test
## for y_sabor
##
## Mean Square Error: 0.5666667
##
## cafe_sabor, means
##
## y_sabor std r se Min Max Q25 Q50 Q75
## Café Colcafé 9.166667 0.7527727 6 0.3073181 8 10 9.00 9 9.75
## Café Tostao 8.833333 0.7527727 6 0.3073181 8 10 8.25 9 9.00
## Café Viejo Molino 7.166667 0.7527727 6 0.3073181 6 8 7.00 7 7.75
##
## Alpha: 0.05 ; DF Error: 15
##
## Critical Range
## 2 3
## 0.9263567 0.9710719
##
## Means with the same letter are not significantly different.
##
## y_sabor groups
## Café Colcafé 9.166667 a
## Café Tostao 8.833333 a
## Café Viejo Molino 7.166667 b
Los residuos representan las diferencias entre las calificaciones observadas y los valores estimados por el modelo. Su revisión permite examinar el cumplimiento de los supuestos necesarios para interpretar el análisis de varianza.
residuos_sabor <- residuals(modelo_sabor)
residuos_sabor
## 1 2 3 4 5 6 7
## 0.1666667 -0.8333333 0.1666667 -0.8333333 1.1666667 0.1666667 -0.1666667
## 8 9 10 11 12 13 14
## -1.1666667 0.8333333 -0.1666667 -0.1666667 0.8333333 0.8333333 -0.1666667
## 15 16 17 18
## -0.1666667 0.8333333 -1.1666667 -0.1666667
sort(residuos_sabor)
## 8 17 2 4 7 10 11
## -1.1666667 -1.1666667 -0.8333333 -0.8333333 -0.1666667 -0.1666667 -0.1666667
## 14 15 18 3 6 1 9
## -0.1666667 -0.1666667 -0.1666667 0.1666667 0.1666667 0.1666667 0.8333333
## 12 13 16 5
## 0.8333333 0.8333333 0.8333333 1.1666667
qqnorm(residuos_sabor,
main = "Gráfico Q-Q de los residuos del sabor")
qqline(residuos_sabor)
qqPlot(residuos_sabor, pch = 10)
## [1] 8 17
plot(modelo_sabor$fitted.values, residuos_sabor,
main = "Residuos frente a valores ajustados del sabor",
xlab = "Valores ajustados",
ylab = "Residuos",
pch = 20)
abline(h = 0, lty = 2)
par(mfrow = c(2, 2))
plot(modelo_sabor)
par(mfrow = c(1, 1))
data2_sabor <- data.frame(cafe_sabor, residuos_sabor)
data2_sabor
| cafe_sabor | residuos_sabor |
|---|---|
| Café Tostao | 0.1666667 |
| Café Tostao | -0.8333333 |
| Café Tostao | 0.1666667 |
| Café Tostao | -0.8333333 |
| Café Tostao | 1.1666667 |
| Café Tostao | 0.1666667 |
| Café Viejo Molino | -0.1666667 |
| Café Viejo Molino | -1.1666667 |
| Café Viejo Molino | 0.8333333 |
| Café Viejo Molino | -0.1666667 |
| Café Viejo Molino | -0.1666667 |
| Café Viejo Molino | 0.8333333 |
| Café Colcafé | 0.8333333 |
| Café Colcafé | -0.1666667 |
| Café Colcafé | -0.1666667 |
| Café Colcafé | 0.8333333 |
| Café Colcafé | -1.1666667 |
| Café Colcafé | -0.1666667 |
mod1_sabor <- lm(abs(residuos_sabor) ~ cafe_sabor)
anv1_sabor <- aov(mod1_sabor)
summary(anv1_sabor)
## Df Sum Sq Mean Sq F value Pr(>F)
## cafe_sabor 2 0.000 0.0000 0 1
## Residuals 15 2.944 0.1963
leveneTest(residuos_sabor ~ cafe_sabor,
center = mean,
data = data2_sabor)
| Df | F value | Pr(>F) | |
|---|---|---|---|
| group | 2 | 0 | 1 |
| 15 | NA | NA |
shapiro.test(residuos_sabor)
##
## Shapiro-Wilk normality test
##
## data: residuos_sabor
## W = 0.92015, p-value = 0.1301
Como complemento, se presenta la prueba de Kolmogorov-Smirnov para comparar la distribución empírica de los residuos con una distribución normal cuyos parámetros se estiman a partir de los mismos datos. Esta salida se conserva como referencia del ejercicio; debido a la estimación de los parámetros y a la presencia de valores repetidos, no debe considerarse una prueba formal de normalidad.
ks.test(residuos_sabor, "pnorm",
mean = mean(residuos_sabor),
sd = sd(residuos_sabor))
## Warning in ks.test.default(residuos_sabor, "pnorm", mean =
## mean(residuos_sabor), : ties should not be present for the one-sample
## Kolmogorov-Smirnov test
##
## Asymptotic one-sample Kolmogorov-Smirnov test
##
## data: residuos_sabor
## D = 0.18461, p-value = 0.5716
## alternative hypothesis: two-sided
Los análisis de aroma y sabor se realizan por separado, debido a que corresponden a dos características sensoriales distintas. En ambos casos, el análisis de varianza permite evaluar si las calificaciones promedio de las tres marcas presentan diferencias estadísticamente significativas.
Para el aroma, las medias obtenidas son 8.67 para Café Tostao, 7.17 para Café Viejo Molino y 9.00 para Café Colcafé. El ANOVA evidencia diferencias significativas entre las marcas (F = 8.443; p = 0.0035). La comparación de Tukey indica que Café Viejo Molino presenta una calificación significativamente menor que Café Tostao y Café Colcafé, mientras que entre estas dos últimas marcas no se identifica una diferencia significativa.
Para el sabor, las medias son 8.83 para Café Tostao, 7.17 para Café Viejo Molino y 9.17 para Café Colcafé. El ANOVA también evidencia diferencias significativas entre las marcas (F = 12.157; p = 0.0007). De acuerdo con la prueba de Tukey, Café Viejo Molino presenta una calificación significativamente menor que Café Tostao y Café Colcafé, mientras que no se encuentra una diferencia significativa entre Café Tostao y Café Colcafé.
En las verificaciones de normalidad, las pruebas de Shapiro-Wilk no muestran evidencia estadística suficiente para rechazar la normalidad de los residuos, tanto para aroma como para sabor. La evaluación de homogeneidad de varianzas debe interpretarse junto con los gráficos de diagnóstico y los resultados de las pruebas correspondientes.
En conjunto, los resultados muestran que Café Colcafé obtiene el promedio más alto en ambas características sensoriales, seguido de Café Tostao. Café Viejo Molino presenta los promedios más bajos tanto en aroma como en sabor. Estas conclusiones corresponden a las calificaciones registradas en este ejercicio y no deben generalizarse más allá de las condiciones de la evaluación realizada.