#Diseños que hemos visto: 1. Factorial simple en arreglo completamente al azar - Análisis de varianza paramétrico(aov) - Oneway.test: Varianzas iguales (incumplimiento) - Kruskal-Walls (Anova no paramétrico) - Anova permutacional
#Modelo de diseño FS(Factorialsimple) 1. FSCA: Yij = miu + Taui + Eij Yij: Ruesta Miu: Media global Taui: Efecto de los tratamientos Eij: Error residual
FSBA: Yij = Miu + Taui + Betaj + Eij Betaj: Efecto bloque
FSBGA: Yijk = Miu + Taui + Betaj + (TauBeta)ij + Eijk i: Tratamiento j: Bloque k: Repetición
#Diselo de un sólo factor - Desbalanceado (No tengo las mismas repeticiones por tratamiento) - Cuadrado latino - Bloque incompleto (Balanceado) –> Lattice balanceado - Bloque incompleto (parcialmente balanceado) –> Lattice parcialmente balanceado
#Regresión lineal simple #Regresión lineal múltiple #Análisis de covarianza (para todos los diseños anteriores)
##Diseño desbalanceado (Factorial simple en bloques generalizados y al azar) módelo
\[Y_{ijk} = \mu + \tau_i + \beta_{j} + \tau\beta_{ij} + \epsilon_{ijk}\] \(i=1,2,\dots\text,a:\text{num taratmientos}\) \(a\) número de niveles de factor \(j=1,2,\dots,b\) \(b\) número de bloques \(k=1,2,\dots,r_i\) \(r_i\) repetición de cada tratamiento
set.seed(123)
aceite = c(
rnorm(12, 10, 0.8),
rnorm(12, 11, 0.78),
rnorm(11, 9, 0.70),
rnorm(12, 10, 0.8),
rnorm(12, 11, 0.78),
rnorm(11, 9, 0.70)
)
bloque = gl(2, 35, 70, c('b1','b2'))
metodo = rep(rep(c('T1', 'T2', 'T3'), c(12, 12, 11)), 2)
datos = data.frame(metodo, bloque, aceite)
head(datos)
## metodo bloque aceite
## 1 T1 b1 9.551619
## 2 T1 b1 9.815858
## 3 T1 b1 11.246967
## 4 T1 b1 10.056407
## 5 T1 b1 10.103430
## 6 T1 b1 11.372052
table(datos$metodo, datos$bloque)
##
## b1 b2
## T1 12 12
## T2 12 12
## T3 11 11
Corriendo como si fuera balanceado
mod1 = aov(aceite ~ bloque * metodo, datos)
summary(mod1)
## Df Sum Sq Mean Sq F value Pr(>F)
## bloque 1 0.05 0.054 0.107 0.745
## metodo 2 41.24 20.622 40.834 3.72e-12 ***
## bloque:metodo 2 0.65 0.323 0.640 0.531
## Residuals 64 32.32 0.505
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
mod1a = aov(aceite ~ metodo * bloque, datos)
summary(mod1a)
## Df Sum Sq Mean Sq F value Pr(>F)
## metodo 2 41.24 20.622 40.834 3.72e-12 ***
## bloque 1 0.05 0.054 0.107 0.745
## metodo:bloque 2 0.65 0.323 0.640 0.531
## Residuals 64 32.32 0.505
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Lo primero que se debe mirar es la interacción. Cuando se estudia la interacción lo que quiere ver es que los metodos se comportaron igual en cada bloque. El único P valor interpretable es el del método.
Corriendo desbalanceado
mod2 = anova(lm(aceite ~ bloque * metodo, datos))
mod2
## Analysis of Variance Table
##
## Response: aceite
## Df Sum Sq Mean Sq F value Pr(>F)
## bloque 1 0.054 0.0541 0.1071 0.7446
## metodo 2 41.243 20.6217 40.8342 3.716e-12 ***
## bloque:metodo 2 0.646 0.3231 0.6399 0.5307
## Residuals 64 32.321 0.5050
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
mod2a = anova(lm(aceite ~ metodo * bloque, datos))
mod2a
## Analysis of Variance Table
##
## Response: aceite
## Df Sum Sq Mean Sq F value Pr(>F)
## metodo 2 41.243 20.6217 40.8342 3.716e-12 ***
## bloque 1 0.054 0.0541 0.1071 0.7446
## metodo:bloque 2 0.646 0.3231 0.6399 0.5307
## Residuals 64 32.321 0.5050
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Como el único factor que tengo es método, solo me interesa compobrar métodos. En estos modelos de un factor cuando se cambian los factores en el ANOVA, no va a tener un cambio significativo.
#Los bloques no son factores experimentales, sino restricciones para aleatorizar.
#No hay hipótesis para bloques.
##Latin squares design in R –> Factorial simple en bloques al azar. Un solo factor, pero dos razones para bloquear. La fertilización rara vez es un bloqueo.
lote <-c(rep("lote1",1),
rep("lote2",1),
rep("lote3",1),
rep("lote4",1),
rep("lote5",1))
genot <- c(rep("genotA",5),
rep("genotB",5),
rep("genotC",5),
rep("genotD",5),
rep("genotE",5))
proc_sem <- 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")
biomasa <- 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)
mydata <- data.frame(lote, genot, proc_sem, biomasa)
mydata
## lote genot proc_sem biomasa
## 1 lote1 genotA A 42
## 2 lote2 genotA E 45
## 3 lote3 genotA C 41
## 4 lote4 genotA B 56
## 5 lote5 genotA D 47
## 6 lote1 genotB C 47
## 7 lote2 genotB B 54
## 8 lote3 genotB A 46
## 9 lote4 genotB D 52
## 10 lote5 genotB E 49
## 11 lote1 genotC B 55
## 12 lote2 genotC C 52
## 13 lote3 genotC D 57
## 14 lote4 genotC E 49
## 15 lote5 genotC A 45
## 16 lote1 genotD D 51
## 17 lote2 genotD A 44
## 18 lote3 genotD E 47
## 19 lote4 genotD C 50
## 20 lote5 genotD B 54
## 21 lote1 genotE E 44
## 22 lote2 genotE D 50
## 23 lote3 genotE B 48
## 24 lote4 genotE A 43
## 25 lote5 genotE C 46
library(collapsibleTree)
## Warning: package 'collapsibleTree' was built under R version 4.2.3
collapsibleTreeSummary(mydata,
c('lote', 'proc_sem', 'genot'),
collapsed = F)
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.3
ggplot(mydata)+
aes(biomasa, genot)+
geom_point(size=5, shape=15)+
facet_grid(lote~proc_sem)
ggplot(mydata)+
aes(lote, genot, fill=biomasa)+
geom_tile()+
facet_wrap(~ proc_sem, nrow = 1)+
theme(axis.text.x = element_text(angle = 90))