#DISEÑO FACTORIAL SIMPLE EN BLOQUES AL AZAR
set.seed(123)
#Respuesta
diam_geom = c(
rnorm(4, 1.8, 0.1),
rnorm(4, 2.0, 0.12),
rnorm(4, 1.9, 0.09)
)
#Factor
gen= gl(3, 4, 12, paste0('g_', 1:3))
#Bloqueo
procedencia = gl(4, 1, 12, paste0 ('l_', 1:4))
data = data.frame(gen, procedencia, diam_geom)
head(data)
## gen procedencia diam_geom
## 1 g_1 l_1 1.743952
## 2 g_1 l_2 1.776982
## 3 g_1 l_3 1.955871
## 4 g_1 l_4 1.807051
## 5 g_2 l_1 2.015515
## 6 g_2 l_2 2.205808
library(collapsibleTree)
## Warning: package 'collapsibleTree' was built under R version 4.2.3
collapsibleTreeSummary(data,
c('procedencia',
'gen',
'diam_geom'), collapsed = FALSE)
##Análisis descriptivo
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.2
ggplot(data) +
aes(gen, diam_geom)+
geom_point(size=3,
color="yellow")+
facet_wrap(~procedencia)+
theme_dark()
##Análisis inferencial \[H_0: \mu_\]
mod = aov(diam_geom~ gen, data)
summary(mod)
## Df Sum Sq Mean Sq F value Pr(>F)
## gen 2 0.08908 0.04454 3.669 0.0684 .
## Residuals 9 0.10927 0.01214
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##En este caso el valor pde los genotipos >5% (7.62%) no se rechaza la hipótesis nula, por lo tanto podemos asumir estadisticamente que los genotipos son iguales.
##Eficiencia de bloqueo (H) ¿Vale la pena bloquear? En este caso tener en cuenta la procedencia de la semilla H= 1.334 (F en el valor de los bloques) Cuando el valor H>1 valió la pena bloquear
#REVISIÓN DE SUPUESTOS
#1. Extraer residuales de modelo
res_mod = mod$residuals
#2. Probando normalidad
shapiro.test(res_mod)
##
## Shapiro-Wilk normality test
##
## data: res_mod
## W = 0.96413, p-value = 0.8407
#3. Probando homocedasticidad (varianzas iguales)
bartlett.test(res_mod, data$gen)
##
## Bartlett test of homogeneity of variances
##
## data: res_mod and data$gen
## Bartlett's K-squared = 1.1617, df = 2, p-value = 0.5594
En ambos casos los p value de las pruebas fueron >5% por lo cual se cumples los supuestos
plot(data$diam_geom,
res_mod, pch = 16)
Los resudiales que tienen patron se dicen autocorrelacionados y es un problema para el análisis de varianza.
#Conclusión - Valio la pena bloquear - Estadisticamente no difieren los genotipos - se cumplen los supuestos
#DISEÑO FACTORIAL SIMPLE EN BLOQUES GENERALIZADOS AL AZAR
set.seed(123)
diam_geom = c(
rnorm(20, 1.8, 0.1),
rnorm(20, 2.0, 0.12),
rnorm(20, 1.9, 0.09)
)
gen= gl(3, 20, 60, paste0('g_', 1:3))
procedencia = gl(4, 5, 60, paste0 ('l_', 1:4))
data = data.frame(gen, procedencia, diam_geom)
head(data)
## gen procedencia diam_geom
## 1 g_1 l_1 1.743952
## 2 g_1 l_1 1.776982
## 3 g_1 l_1 1.955871
## 4 g_1 l_1 1.807051
## 5 g_1 l_1 1.812929
## 6 g_1 l_2 1.971506
library(collapsibleTree)
collapsibleTree(
data, c("procedencia",
"gen",
"diam_geom"),
collapsed = FALSE)
library(lattice)
bwplot(diam_geom~gen | procedencia,
data)
mod3 = aov(diam_geom ~procedencia*gen, data)
summary(mod3)
## Df Sum Sq Mean Sq F value Pr(>F)
## procedencia 3 0.0310 0.01034 1.135 0.344
## gen 2 0.3233 0.16164 17.732 1.71e-06 ***
## procedencia:gen 6 0.0407 0.00678 0.744 0.617
## Residuals 48 0.4376 0.00912
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1