Una conocida revista de automovilismo tomó tres de los mejores automóviles medianos fabricados en Estados Unidos, los probó y los comparó en relación con varios criterios. En una prueba sobre rendimiento de la gasolina, se probaron cinco automóviles de cada marca en un recorrido de 500 millas, los datos de rendimiento, en millas por galón de gasolina, se presentan a continuación. Use α =0.05 para probar si la diferencia en el rendimiento medio, en millas por galón, entre los tres automóviles es significativa # Paso 1: Definir los datos # Cada grupo representa los valores observados de cada tratamiento
tratamiento <- c(rep("A", 5), rep("B", 5), rep("C", 5))
rendimiento <- c(19, 21, 20, 19, 21, 19, 20, 22, 21, 23, 24, 26, 23, 25, 27)
datos <- data.frame(Tratamiento = tratamiento, Rendimiento = rendimiento)
print(datos)
## Tratamiento Rendimiento
## 1 A 19
## 2 A 21
## 3 A 20
## 4 A 19
## 5 A 21
## 6 B 19
## 7 B 20
## 8 B 22
## 9 B 21
## 10 B 23
## 11 C 24
## 12 C 26
## 13 C 23
## 14 C 25
## 15 C 27
anova_result <- aov(Rendimiento ~ Tratamiento, data = datos)
summary(anova_result)
## Df Sum Sq Mean Sq F value Pr(>F)
## Tratamiento 2 70 35 17.5 0.000277 ***
## Residuals 12 24 2
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
k <- length(unique(datos$Tratamiento)) # Número de tratamientos
N <- nrow(datos) # Número total de observaciones
df_A <- k - 1 # Grados de libertad entre tratamientos
df_E <- N - k # Grados de libertad del error
SST <- sum((rendimiento - mean(rendimiento))^2) # Suma total de cuadrados
SSA <- sum(tapply(rendimiento, tratamiento, length) *
(tapply(rendimiento, tratamiento, mean) - mean(rendimiento))^2) # Suma de cuadrados entre tratamientos
SSE <- SST - SSA # Suma de cuadrados del error
MSA <- SSA / df_A # Cuadrados medios entre tratamientos
MSE <- SSE / df_E # Cuadrados medios del error
F_calculado <- MSA / MSE
alpha <- 0.05
F_critico <- qf(1 - alpha, df_A, df_E) # Valor crítico de F
cat("Estadístico F calculado:", F_calculado, "\n")
## Estadístico F calculado: 17.5
cat("Valor crítico de F (alpha = 0.05):", F_critico, "\n")
## Valor crítico de F (alpha = 0.05): 3.885294
if (F_calculado > F_critico) {
cat("Conclusión: Rechazamos la hipótesis nula. Hay diferencias significativas entre los tratamientos.\n")
} else {
cat("Conclusión: No se rechaza la hipótesis nula. No hay diferencias significativas entre los tratamientos.\n")
}
## Conclusión: Rechazamos la hipótesis nula. Hay diferencias significativas entre los tratamientos.
boxplot(Rendimiento ~ Tratamiento, data = datos,
main = "Rendimiento por Tratamiento",
xlab = "Tratamiento",
ylab = "Rendimiento",
col = c("lightblue", "lightgreen", "lightpink"))