Factor Simple en Bloques al Azar (FSBA)

lote <-
  c(
    rep("L1", 1),
    rep("L2", 1),
    rep("L3", 1),
    rep("L4", 1),
    rep("L5", 1)
  )
genotipo <-
  c(
    rep("gA", 5),
    rep("gB", 5),
    rep("gC", 5),
    rep("gD", 5),
    rep("gE", 5)
  )
prov <- c("A", "E", "C", "B", "D",
          "C", "B", "A", "D", "E",
          "B", "C", "D", "E", "A",
          "D", "A", "E", "C", "B",
          "E", "D", "B", "A", "C")

biom <- c(42, 45, 41, 56, 47, 47,
          54, 46, 52, 49, 55, 52,
          57, 49, 45, 51, 44, 47,
          50, 54, 44, 50, 48, 43,
          46)

data <- data.frame(
  lote, genotipo, prov, biom
)

head(data)

Gráficos descriptivos.

library(lattice)

bwplot(biom ~ genotipo | prov + lote,
       data)

Modelo:

\[y_{ijk} = \mu + \tau_i +\beta_j + \delta_k + \epsilon_{ijk}\] \[i=1,\dots,p\\ j=1,\dots,p\\ k=1,\dots,p\\\]

tbl = matrix(data$prov, 5)
colnames(tbl) = unique(data$genotipo)
rownames(tbl) = unique(data$lote)
tbl
##    gA  gB  gC  gD  gE 
## L1 "A" "C" "B" "D" "E"
## L2 "E" "B" "C" "A" "D"
## L3 "C" "A" "D" "E" "B"
## L4 "B" "D" "E" "C" "A"
## L5 "D" "E" "A" "B" "C"

Hipótesis

\[H_o = \mu_{Bg1} = \mu_{Bg2} =\mu_{Bg3} =\mu_{Bg4} =\mu_{Bg5}\]

mod <- lm(biom ~ lote + genotipo + prov,
          data)
anova(mod)
# Unicamente se interpreta el valor de genotipo.
bwplot(biom ~ genotipo | prov, 
       data)

library(ggplot2)
ggplot(data)+
  aes(x=prov,
      y= biom,
      fill=genotipo)+
  geom_col(
    color='black',
    position = 'dodge')

Revisión de supuestos.

res_mod = mod$residuals

#1. Normalidad

shapiro.test(res_mod)
## 
##  Shapiro-Wilk normality test
## 
## data:  res_mod
## W = 0.97691, p-value = 0.8178
#Se cumple el supuesto de normalidad.

#2. Igualdad de varianzas.
bartlett.test(res_mod,
              genotipo)
## 
##  Bartlett test of homogeneity of variances
## 
## data:  res_mod and genotipo
## Bartlett's K-squared = 5.9223, df = 4, p-value = 0.205
#Se cumple el supuesto (varianzas iguales)
# install.packages("TukeyC")
library(TukeyC)
## Warning: package 'TukeyC' was built under R version 4.2.3
tt = TukeyC(mod, 'genotipo')
plot(tt, lwd =2, cex=2)