Ejercicio: Se realizó un estudio en el departamento de Oruro - Bolivia para evaluar el peso vivo en llamas. Se pide realizar un Análisis de Varianza bajo un diseño de bloques completamente al azar considerando como factores (Zona y Edad) y la variable respuesta (Peso).

Zona: Salina, San Martín y Pampa Aullaga Edad: Expresado en años (II, III y IV años) Peso: Expresado en Kilos

Librerías

library(readxl)
library(ggplot2)
library(tidyverse)

Dataframe

datos <- read_excel("PESO_Vivo.xlsx")
datos

Estadísticas descriptivas

resultados <- aggregate(Peso ~ Zona + Edad, data = datos, FUN = function(x) {
  c(min = min(x), Q1 = quantile(x, 0.25), median = median(x), Q3 = quantile(x, 0.75), max = max(x), mean = mean(x), sd = sd(x))
})

print(resultados)
##         Zona Edad Peso.min Peso.Q1.25% Peso.median Peso.Q3.75% Peso.max
## 1   Pampa A.   II     67.0        67.0        67.0        67.0     67.0
## 2    Salinas   II     72.3        72.3        72.3        72.3     72.3
## 3 San Martín   II     71.0        71.0        71.0        71.0     71.0
## 4   Pampa A.  III     82.5        82.5        82.5        82.5     82.5
## 5    Salinas  III     85.0        85.0        85.0        85.0     85.0
## 6 San Martín  III     79.0        79.0        79.0        79.0     79.0
## 7   Pampa A.   IV     98.5        98.5        98.5        98.5     98.5
## 8    Salinas   IV     96.2        96.2        96.2        96.2     96.2
## 9 San Martín   IV    100.5       100.5       100.5       100.5    100.5
##   Peso.mean Peso.sd
## 1      67.0      NA
## 2      72.3      NA
## 3      71.0      NA
## 4      82.5      NA
## 5      85.0      NA
## 6      79.0      NA
## 7      98.5      NA
## 8      96.2      NA
## 9     100.5      NA

Gráfico exploratorio

grafico <- ggplot(datos, aes(x = Edad, y = Peso, fill = Zona)) +
  geom_bar(stat = "identity", position = "dodge") +  # barras con colores distintos para cada zona
  labs(x = "Edad", y = "Peso", fill = "Zona") +  # etiquetas de ejes
  theme_minimal() +  # tema minimalista
  theme(legend.position = "bottom")  # posición de la leyenda

print(grafico)

ANOVA para DBCA

model <- aov(Peso ~ Zona + Edad, data = datos)
anova_table <- summary(model)
print(anova_table)
##             Df Sum Sq Mean Sq F value  Pr(>F)    
## Zona         2    5.1     2.5   0.269 0.77716    
## Edad         2 1210.0   605.0  64.309 0.00091 ***
## Residuals    4   37.6     9.4                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Prueba post Hoc

posthoc <- TukeyHSD(model)
print(posthoc)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Peso ~ Zona + Edad, data = datos)
## 
## $Zona
##                           diff       lwr       upr     p adj
## Salinas-Pampa A.     1.8333333 -7.092201 10.758868 0.7594241
## San Martín-Pampa A.  0.8333333 -8.092201  9.758868 0.9416590
## San Martín-Salinas  -1.0000000 -9.925534  7.925534 0.9176056
## 
## $Edad
##            diff       lwr      upr     p adj
## III-II 12.06667  3.141132 20.99220 0.0185591
## IV-II  28.30000 19.374466 37.22553 0.0007787
## IV-III 16.23333  7.307799 25.15887 0.0064321

Interpretación de resultados

  1. Los resultados del ANOVA para un DBCA indica que existe diferencia estadísticamente significativa en las medias de los pesos según el factor “Edad” (p < 0,05).
  2. La prueba Post Hoc indica que existe diferencia estadísticamente significativa en las medias de los pesos de todos los grupos etarios (p < 0,05).