Contexto Ejercicio 6

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)

Crear un dataframe

datos <- data.frame(Tratamiento = tratamiento, Rendimiento = rendimiento)

Verificar los datos

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

Paso 2: Realizar el análisis ANOVA

anova_result <- aov(Rendimiento ~ Tratamiento, data = datos)

Mostrar los resultados del análisis

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

Paso 3: Calcular manualmente el estadístico F y compararlo con el valor crítico

Grados de libertad

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

Sumas de cuadrados

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

Cuadrados medios

MSA <- SSA / df_A  # Cuadrados medios entre tratamientos
MSE <- SSE / df_E  # Cuadrados medios del error

Estadístico F

F_calculado <- MSA / MSE

Comparación con el valor crítico de F (para alpha = 0.05)

alpha <- 0.05
F_critico <- qf(1 - alpha, df_A, df_E)  # Valor crítico de F

Mostrar los resultados

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.

Paso 4: Visualización

Gráfico de caja para comparar los grupos

boxplot(Rendimiento ~ Tratamiento, data = datos, 
        main = "Rendimiento por Tratamiento", 
        xlab = "Tratamiento", 
        ylab = "Rendimiento", 
        col = c("lightblue", "lightgreen", "lightpink"))