instalamos librerias

install.packages("agricolae")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.4'
## (as 'lib' is unspecified)
install.packages("dplyr")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.4'
## (as 'lib' is unspecified)
install.packages("ggplot2")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.4'
## (as 'lib' is unspecified)

cargamos librerias

library(agricolae)
library(ggplot2)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union

—————————————–

EJERCICIO 1: Modelo Completamente al Azar

—————————————–

Elabore la corrida correspondiente de un modelo completamete al azar en el software R resuelve .¿Cuánto fue el valor p mostrado en la tabla de análisis de varianza? # 5.1e-08 • ¿Las especies son significativamente diferentes? #si, son significativamente diferentes • Muestre los diferentes grupos que se forman en las pruebas post anova LSD y Duncan • Realice el grafico de barras correspondiente al grupo formados en las pruebas post anova de Duncan.

# Datos
longitud <- c(
  5.1, 4.9, 4.7, 4.6, 5, 5.4, 4.6, 5, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8,
  7, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5, 5.9, 6, 6.1, 5.6,
  6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8
)

especie <- rep(c("setosa", "versicolor", "virginica"), each = 15)
datos <- data.frame(especie, longitud)
#ANOVA
modelo <- aov(longitud ~ especie, data = datos)
summary(modelo)
##             Df Sum Sq Mean Sq F value  Pr(>F)    
## especie      2  18.76   9.382   25.71 5.1e-08 ***
## Residuals   42  15.32   0.365                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Pruebas Post Hoc

LSD.test(modelo, "especie", group = TRUE)
duncan <- duncan.test(modelo, "especie", group = TRUE)
# Gráfico de barras (Duncan)
resultados <- duncan$groups %>%
  mutate(especie = rownames(duncan$groups)) %>%
  arrange(desc(longitud))
ggplot(resultados, aes(x = especie, y = longitud, fill = groups)) +
  geom_bar(stat = "identity", color = "black") +
  labs(title = "Comparación de Longitudes (Duncan)", y = "Longitud Promedio", x = "Especie") +
  theme_minimal()

—————————————–

EJERCICIO 2: Efecto de Tratamientos en Cocción de Frijoles

—————————————–

Tratando de controlar de la mejor manera el experimento determine: • Los posibles factores perturbadores y su propuesta de control. Temperatura del agua de cocción, Tipo o variedad de frijol, Tamaño o peso de la muestra, Tiempo de remojo previo (si se hizo).Tipo de olla o fuente de calor. • La unidad experimental: Las 28 unidades experimentales (7 por tratamiento) • El procedimiento de aleatorización.4 Tratamientos:T1 Control, T2 (bicarbonato), T3 (sal), y T4 (combinado). • Formule las hipótesis estadísticas. #Hipótesis nula (H₀): Los tratamientos no tienen efecto sobre el tiempo de cocción. H0:t1 =t2 =t3=t4

#Hipótesis alternativa (H₁): Al menos uno de los tratamientos tiene un efecto distinto sobre el tiempo de cocción. 𝐻1: t1≠t2 o t1≠t3 o t1 ≠t4 o t2≠t3 o t2≠t4 o t3≠t4 • Construya la tabla ANOVA. • De ser necesario realice las pruebas de comparación múltiples y decida que tratamiento fue el que menor tiempo de cocción dio.

# Datos
tiempos <- c(
  213, 214, 204, 208, 212, 200, 207,  # Control
  76, 85, 74, 78, 82, 75, 82,         # T2 (Bicarbonato)
  57, 67, 55, 64, 61, 63, 63,         # T3 (Sal)
  84, 82, 85, 92, 87, 79, 90          # T4 (Combinado)
)
tratamientos <- rep(c("Control", "T2", "T3", "T4"), each = 7)
datos2 <- data.frame(tratamientos, tiempos)
# ANOVA
modelo2 <- aov(tiempos ~ tratamientos, data = datos2)
#Si el valor-p es menor a 0.05, rechazamos H₀ y se justifica realizar pruebas de comparación múltiple, en este caso la rechazamos y procedemos a realizar las pruebas de comparacion multiple
# pruebas de comparacion multiple y seleccion de mejor tratamiento 

# Prueba de Duncan
duncan2 <- duncan.test(modelo2, "tratamientos", group = TRUE)
print(duncan2)
## $statistics
##    MSerror Df     Mean       CV
##   20.32143 24 108.5357 4.153407
## 
## $parameters
##     test       name.t ntr alpha
##   Duncan tratamientos   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 2.918793      4.973148
## 3 3.065610      5.223301
## 4 3.159874      5.383910
## 
## $means
##           tiempos      std r       se Min Max   Q25 Q50   Q75
## Control 208.28571 5.122313 7 1.703837 200 214 205.5 208 212.5
## T2       78.85714 4.180453 7 1.703837  74  85  75.5  78  82.0
## T3       61.42857 4.157609 7 1.703837  55  67  59.0  63  63.5
## T4       85.57143 4.503967 7 1.703837  79  92  83.0  85  88.5
## 
## $comparison
## NULL
## 
## $groups
##           tiempos groups
## Control 208.28571      a
## T4       85.57143      b
## T2       78.85714      c
## T3       61.42857      d
## 
## attr(,"class")
## [1] "group"
# Gráfico
res2 <- duncan2$groups
res2$tratamientos <- rownames(res2)
colnames(res2) <- c("tiempos", "grupo", "tratamientos")

ggplot(res2, aes(x = tratamientos, y = tiempos, fill = grupo)) +
  geom_bar(stat = "identity", color = "black") +
  geom_text(aes(label = grupo), vjust = -0.5, size = 5) +
  labs(title = "Tiempo de Cocción de Frijoles",
       y = "Tiempo (min)",
       x = "Tratamiento") +
  theme_minimal()

#Según el análisis ANOVA y la prueba de Duncan, el tratamiento T3 (Sal) fue el que redujo significativamente el tiempo de cocción en comparación con los otros tratamientos. Es, por lo tanto, el tratamiento más efectivo para acortar el tiempo de cocción de los frijoles bajo las condiciones evaluadas.

—————————————–

EJERCICIO 3: Diseño de Bloques Completos al Azar

—————————————–

rendimiento <- c(5.5, 5.5, 6.9, 7.2,
                 5.8, 5.3, 5.6, 4.1,
                 6.9, 5.3, 6.6, 4.5,
                 5.0, 7.2, 6.1, 7.0,
                 6.2, 5.7, 4.8, 5.8)

tratamiento <- c("C", "A", "B", "D",
                 "D", "B", "C", "A",
                 "D", "A", "B", "C",
                 "A", "B", "C", "D",
                 "B", "C", "A", "D")

bloque <- rep(1:5, each = 4)

datos3 <- data.frame(bloque = as.factor(bloque), tratamiento, rendimiento)

H₀ (nula): Todos los sistemas de cultivo tienen el mismo efecto sobre el rendimiento.

H0:μA =μB =μC=μD

#ANOVA
modelo3 <- aov(rendimiento ~ tratamiento + bloque, data = datos3)
summary(modelo3)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## tratamiento  3  8.946  2.9820  11.528 0.000756 ***
## bloque       4  3.520  0.8800   3.402 0.044346 *  
## Residuals   12  3.104  0.2587                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

#Para la variable tratamiento, el valor-p es 0.00756, que es menor que 0.05.Por lo tanto, rechazamos la hipótesis nula H₀. Existe evidencia estadística de que al menos un sistema de cultivo genera un rendimiento significativamente distinto.

# Prueba de comparación múltiple (Duncan)
library(agricolae)

duncan3 <- duncan.test(modelo3, "tratamiento", group = TRUE)
print(duncan3)
## $statistics
##     MSerror Df Mean       CV
##   0.2586667 12 5.85 8.693895
## 
## $parameters
##     test      name.t ntr alpha
##   Duncan tratamiento   4  0.05
## 
## $duncan
##      Table CriticalRange
## 2 3.081307     0.7008420
## 3 3.225244     0.7335804
## 4 3.312453     0.7534162
## 
## $means
##   rendimiento       std r        se Min Max Q25 Q50 Q75
## A        4.94 0.5412947 5 0.2274496 4.1 5.5 4.8 5.0 5.3
## B        6.44 0.7368853 5 0.2274496 5.3 7.2 6.2 6.6 6.9
## C        5.48 0.5932959 5 0.2274496 4.5 6.1 5.5 5.6 5.7
## D        6.54 0.6841053 5 0.2274496 5.8 7.2 5.8 6.9 7.0
## 
## $comparison
## NULL
## 
## $groups
##   rendimiento groups
## D        6.54      a
## B        6.44      a
## C        5.48      b
## A        4.94      b
## 
## attr(,"class")
## [1] "group"
# Grafico de barras
library(ggplot2)
library(dplyr)

res3 <- duncan3$groups
res3$tratamiento <- rownames(res3)
colnames(res3) <- c("rendimiento", "grupo", "tratamiento")
res3 <- arrange(res3, desc(rendimiento))  # ordenar de mayor a menor

ggplot(res3, aes(x = tratamiento, y = rendimiento, fill = grupo)) +
  geom_bar(stat = "identity", color = "black") +
  geom_text(aes(label = grupo), vjust = -0.5, size = 5) +
  labs(title = "Rendimiento de Col Crespa por Tratamiento",
       y = "Rendimiento (t/ha)",
       x = "Tratamiento") +
  theme_minimal()

El resultado de la prueba de Duncan muestra dos grupos diferentes:

Grupo a: Tratamientos D y B (rendimientos altos) Grupo b: Tratamientos C y A (rendimientos bajos) Esto indica que hay diferencias significativas entre los tratamientos, porque no todos están en el mismo grupo de letras.