Se pide determinar si existe una diferencia en el peso de unos pollitos a 0 días | 4 días | 8 días de nacidos, para eso se formula formalmente las hipótesis

H0: No existen diferencias en peso de los pollitos a 0,4,8 días de nacidos

\[ \mu_0 = \mu_4 = \mu_8\]

Ha: Existen diferencias en peso de los pollitos a 0,4,8 días de nacidos

\[ \mu_0 \neq \mu_4 \lor \mu_0 = \mu_8 \lor \mu_4 = \mu_8\]

Condiciones para aplicar la prueba

-> La escala con la que se mide la variable dependiente tiene propiedades de una escala de intervalos iguales. -> Las mediciones son independientes al interior de cada grupo. (Se asume independencia entre los grupos) -> Las poblaciones siguen una distribución normal (Se puede ver gráficamente más abajo)

Lectura y Organización de datos
datos <- ChickWeight # datos chickWeight
# Se lleva los datos a vector
dia_0 <- (datos %>% filter(Time == 0) %>% select (weight))$weight
dia_0 <- head(dia_0,-1) # Se elimina la ultima fila ya que los demas dataframes tienen 49
dias_4 <- (datos %>% filter(Time == 4) %>% select (weight))$weight
dias_8 <- (datos %>% filter(Time == 8) %>% select (weight))$weight
instancia <- factor(1:49)
data <- data.frame(instancia,dia_0,dias_4,dias_8)# Se crea el data frame
# Se lleva el data frame a formato largo
data <- data %>% pivot_longer(c("dia_0", "dias_4", "dias_8"), names_to="dias", values_to = "peso")
data[["dias"]] <- factor(data[["dias"]])

# Comprobación de normalidad
g <- ggqqplot(data, x = "peso", y = "dias", color = "dias")
g <- g + facet_wrap(~ dias)
g <- g + rremove ("x.ticks") + rremove ("x.text")
g <- g + rremove ("y.ticks") + rremove ("y.text")
g <- g + rremove ("axis.title")
print (g)

cat("Cómo se puede observar existen demasiados puntos, por lo que la normalidad no está asegurada, por lo que se utiliza un nivel de significancia exigente")
## Cómo se puede observar existen demasiados puntos, por lo que la normalidad no está asegurada, por lo que se utiliza un nivel de significancia exigente
# Nivel de significancia
alfa <- 0.01
# Procedimiento ANOVA
anova2 <- aov( peso~dias , data = data)
anova <- ezANOVA(data = data,
                 dv = peso,
                 within = dias,
                 wid = instancia,
                 return_aov = TRUE )
p_value <- anova$ANOVA$p
anova
## $ANOVA
##   Effect DFn DFd        F            p p<.05       ges
## 2   dias   2  96 416.3047 4.932081e-48     * 0.8213629
## 
## $`Mauchly's Test for Sphericity`
##   Effect         W            p p<.05
## 2   dias 0.1170317 1.273883e-22     *
## 
## $`Sphericity Corrections`
##   Effect       GGe        p[GG] p[GG]<.05       HFe        p[HF] p[HF]<.05
## 2   dias 0.5310764 1.030478e-26         * 0.5331038 8.331539e-27         *
## 
## $aov
## 
## Call:
## aov(formula = formula(aov_formula), data = data)
## 
## Grand Mean: 64.08844
## 
## Stratum 1: instancia
## 
## Terms:
##                 Residuals
## Sum of Squares   6433.184
## Deg. of Freedom        48
## 
## Residual standard error: 11.5769
## 
## Stratum 2: instancia:dias
## 
## Terms:
##                     dias Residuals
## Sum of Squares  62954.05   7258.61
## Deg. of Freedom        2        96
## 
## Residual standard error: 8.695432
## Estimated effects may be unbalanced
#Grafico de el tamaño del efecto
g2 <- ezPlot( data = data,
              dv = peso,
              wid = instancia,
              within = dias,
              y_lab = "La diferencia en crecimiento",
              x = dias)
print(g2)

cat("De la prueba se desprende un p-value de",p_value,"el cual es muy inferior a nuestro nivel de confianza",alfa,"por lo tanto se rechaza la hipótesis nula y se acepta la hipótesis alternativa es decir que existen diferencias significativas en peso de los pollitos en 4 y 8 días después de nacer, por lo tanto se hace el procedimiento post hoc")
## De la prueba se desprende un p-value de 4.932081e-48 el cual es muy inferior a nuestro nivel de confianza 0.01 por lo tanto se rechaza la hipótesis nula y se acepta la hipótesis alternativa es decir que existen diferencias significativas en peso de los pollitos en 4 y 8 días después de nacer, por lo tanto se hace el procedimiento post hoc
# Procedimiento post hoc de Bonferroni y Holm
post_hoc_bonferroni <- pairwise.t.test(data$peso, data$dias, p.adj = "bonferroni", paired = TRUE)
post_hoc_holm <- pairwise.t.test(data$peso, data$dias, p.adj = "holm", paired = TRUE)
cat("Corección de Bonferroni")
## Corección de Bonferroni
print(post_hoc_bonferroni)
## 
##  Pairwise comparisons using paired t tests 
## 
## data:  data$peso and data$dias 
## 
##        dia_0  dias_4
## dias_4 <2e-16 -     
## dias_8 <2e-16 <2e-16
## 
## P value adjustment method: bonferroni
cat("Corección de Holm")
## Corección de Holm
print(post_hoc_holm)
## 
##  Pairwise comparisons using paired t tests 
## 
## data:  data$peso and data$dias 
## 
##        dia_0  dias_4
## dias_4 <2e-16 -     
## dias_8 <2e-16 <2e-16
## 
## P value adjustment method: holm