# Datos proporcionados
SST <- 10800 # Suma de cuadrados total
SSA <- 4560 # Suma de cuadrados tratamientos
k <- 3 # Número de tratamientos (métodos)
N <- 30 # Total de empleados
# Cálculos
SSE <- SST - SSA # Suma de cuadrados del error
df_trat <- k - 1 # Grados de libertad para tratamientos
df_error <- N - k # Grados de libertad para el error
df_total <- N - 1 # Grados de libertad total
# Cuadrados medios
MS_trat <- SSA / df_trat # Cuadrado medio para tratamientos
MS_error <- SSE / df_error # Cuadrado medio para el error
# Estadístico F
F_calculado <- MS_trat / MS_error # Estadístico F
# Valor-p
p_valor <- 1 - pf(F_calculado, df_trat, df_error) # Valor-p asociado al estadístico F
# Generar la tabla ANOVA
tabla_anova <- data.frame(
`Fuente de Variación` = c("Tratamientos", "Error", "Total"),
`Suma de Cuadrados` = c(SSA, SSE, SST),
`Grados de Libertad` = c(df_trat, df_error, df_total),
`Cuadrado Medio` = c(MS_trat, MS_error, NA),
`F` = c(F_calculado, NA, NA),
`Valor-p` = c(p_valor, NA, NA)
)
# Mostrar la tabla ANOVA
print(tabla_anova)
## Fuente.de.Variación Suma.de.Cuadrados Grados.de.Libertad Cuadrado.Medio
## 1 Tratamientos 4560 2 2280.0000
## 2 Error 6240 27 231.1111
## 3 Total 10800 29 NA
## F Valor.p
## 1 9.865385 0.0006078148
## 2 NA NA
## 3 NA NA