.

Universidad Nacional Agraria la Molina

Curso:

Diseños Experimentales 2

Profesor:

Salazar Vega, Rolando Salazar

Autor:

  • Uriarte Salvador, Aron

1. Lectura de datos

Supóngase que un ingeniero químico cree que el tiempo de reacción en un proceso químico es función del catalizador empleado. De hecho 4 catalizadores están siendo investigados. El procedimiento experimental consiste en seleccionar un lote de materia prima, cargar una planta piloto, aplicar cada catalizador a ensayos separados de dicha planta y observar el tiempo de reacción. Debido a que las variaciones en los lotes de materia prima pueden afectar el comportamiento del catalizador, el ingeniero decide controlar este factor por medio de bloques. Sin embargo, cada lote es lo suficientemente grande para permitir el ensayo de 3 catalizadores únicamente. Por lo tanto, es necesario utilizar un diseño aleatorizado por bloques incompletos.

knitr::opts_chunk$set(message = FALSE)

Data <- data.frame(
  Bloque = c(1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4),
  Tratamiento = c(1, 3, 4, 1, 2, 3, 2, 3, 4, 1, 2, 4),
  Y = c(73, 73, 75, 74, 75, 75, 67, 68, 72, 71, 72, 75)
)

Número de (k)

Parcelas por bloque

k <- as.data.frame(table(Data$Bloque))[1,2];k
## [1] 3

Número de bloques (b)

b <- length(unique(Data$Bloque)); b 
## [1] 4

Número de tratamiento (v)

Data$Tratamiento <- factor(Data$Tratamiento)
v <- nlevels(Data$Tratamiento);v
## [1] 4

Tamaño del bloque (r)

Repeticiones

r <- length(Data$Tratamiento) / b ; r  
## [1] 3

Número total de observaciones(N)

N <- nrow(Data); N
## [1] 12

Número mínimo de tratamientos compartidos por par de bloques (λ)

lambda <- round(N / (r * (r - 1)), 0); lambda
## [1] 2

Eficiencia

(lambda*v)/(k*r)
## [1] 0.8888889

2.Análisis de varianza

Convertimos a factor

Bloque<- as.factor(Data$Bloque)
Tratamiento<-as.factor(Data$Tratamiento)
Y<-as.numeric(Data$Y)

Tabla de análisis de varianza

model <- aov(Y ~ Bloque+Tratamiento )
summary(model)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Bloque       3  55.00  18.333   28.20 0.00147 **
## Tratamiento  3  22.75   7.583   11.67 0.01074 * 
## Residuals    5   3.25   0.650                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Nuevo modelo para el DBIB

model1 <- aov(Y ~ Tratamiento + Bloque)
summary(model1)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  3  11.67   3.889   5.983 0.041463 *  
## Bloque       3  66.08  22.028  33.889 0.000953 ***
## Residuals    5   3.25   0.650                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

3. Caso aplicativo

El experimento que ha motivado esta investigación, consistió en la evaluación de tres tratamientos (T1, T2, T3) en un campo de cultivo de algodón que tiene instalado un sistema de riego por goteo. En cada bloque se establecieron dos parcelas, los tratamientos fueron asignados al azar a las dos parcelas de cada bloque, se formó la primera repetición completa con las parejas de tratamientos: (T1, T2); (T1, T3); (T2, T3). En la segunda repetición completa se asignaron las parejas de tratamiento al azar a los bloques y luego los tratamientos a las parcelas

Lectura de datos

Data <- data.frame(
  Tratamiento = c("T1", "T1", "T1", "T1", "T2", "T2", "T2", "T2", "T3", "T3", "T3", "T3"),
  Surco = c("Surco 17", "Surco 11", "Surco 2", "Surco 5", "Surco 11", "Surco 14", "Surco 8", "Surco 2", "Surco 14", "Surco 17", "Surco 5", "Surco 8"),
  Y = c(14.513, 12.121, 14.185, 12.33, 5.443, 8.405, 6.595, 9.946, 5.425, 4.785, 5.428, 5.111)
)

Data
##    Tratamiento    Surco      Y
## 1           T1 Surco 17 14.513
## 2           T1 Surco 11 12.121
## 3           T1  Surco 2 14.185
## 4           T1  Surco 5 12.330
## 5           T2 Surco 11  5.443
## 6           T2 Surco 14  8.405
## 7           T2  Surco 8  6.595
## 8           T2  Surco 2  9.946
## 9           T3 Surco 14  5.425
## 10          T3 Surco 17  4.785
## 11          T3  Surco 5  5.428
## 12          T3  Surco 8  5.111

Convirtiendo a factor

Tratamiento<-as.factor(Data$Tratamiento)

Surco<-as.factor(Data$Surco)

Y<-as.numeric(Data$Y)

Grafico de cajas para los tratamientos

library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.3
ggplot(data = Data, aes(x = Tratamiento, y = Y, color = Tratamiento)) +
  geom_boxplot() +
  theme_bw()

Análisis de varianza para el algodón

Ho: El tratamiento no influye significativamente en el peso del algodón

H1: El tratamiento influye significativamente en el peso del algodón

model <- aov(Y ~ Surco+Tratamiento)
summary(model)
##             Df Sum Sq Mean Sq F value  Pr(>F)   
## Surco        5  47.11    9.42   9.032 0.02665 * 
## Tratamiento  2 103.79   51.89  49.739 0.00149 **
## Residuals    4   4.17    1.04                   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Como el pvalor = 0.00149 < 0.05, se rechaza la hipotesis nula.Lo que indica que el nivel de tratamiento influye significativa en el peso del algodón.

Análisis de varianza para bloques ajustados y datos de algodón

Ho: El Bloque no influye significativamente en el peso del algodon

H1: El Bloque influye significativamente en el peso del algodon

modelo <- aov(Y ~ Tratamiento+Surco)
summary(modelo)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Tratamiento  2 138.39   69.20  66.323 0.000857 ***
## Surco        5  12.51    2.50   2.398 0.208647    
## Residuals    4   4.17    1.04                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Como el pvalor=0.208647 es mayor a 0.05 se acepta la Ho.Por lo tanto no hay diferencias significativas entre los bloques.

par(mfrow=c(2,2))
plot(modelo)

Supuesto de Normalidad

Ho: Los residuals estandarizados tienen una distribución Normal

H1:Los residuals estandarizados no tienen una distribución Normal

modelo1<-lm(Y ~ Tratamiento+Surco)
ri<-residuals(modelo1)
shapiro.test(ri)
## 
##  Shapiro-Wilk normality test
## 
## data:  ri
## W = 0.87443, p-value = 0.07439

A un nivel de significación del 5% se ha encontrado suficiente evidencia para afirmar que los residuales estandarizados se ajusta a una distribución. Por lo tanto, se puede aceptar que se cumple con el supuesto de normalidad de errores.

Supuesto de Homogeneidad de varianza

Ho:Los errores tienen variancia constante

H1:Los errores no tienen variancia constante

library(car)
## Warning: package 'car' was built under R version 4.2.3
ncvTest(modelo1)
## Non-constant Variance Score Test 
## Variance formula: ~ fitted.values 
## Chisquare = 0.3031619, Df = 1, p = 0.58191

A un nivel de significación del 5% no se ha encontrado evidencia suficiente para rechazar el supuesto de que los errores tiene variancia constante. Por lo tanto se puede aceptar que se cumple con el supuesto de homogeneidad de variancias.

Supuesto de indepedencia de errores

Ho:Los errores son independientes

H1:Los errores no son independientes

library(lmtest)
## Warning: package 'lmtest' was built under R version 4.2.3
dwtest(modelo,alternative = c("two.sided"))
## 
##  Durbin-Watson test
## 
## data:  modelo
## DW = 1.7866, p-value = 0.3026
## alternative hypothesis: true autocorrelation is not 0

Como el pvalor el mayor a 0.05 no se rechaza la Ho por lo que los errores son independientes

Prueba de Tukey

library(multcomp)
library(agricolae)
## Warning: package 'agricolae' was built under R version 4.2.3
mod2<-aov(lm(Y~Tratamiento))
ptuckey<-glht(mod2,linfct = mcp(Tratamiento="Tukey"))
summary(ptuckey)
## 
##   Simultaneous Tests for General Linear Hypotheses
## 
## Multiple Comparisons of Means: Tukey Contrasts
## 
## 
## Fit: aov(formula = lm(Y ~ Tratamiento))
## 
## Linear Hypotheses:
##              Estimate Std. Error t value Pr(>|t|)    
## T2 - T1 == 0  -5.6900     0.9627  -5.911   <0.001 ***
## T3 - T1 == 0  -8.1000     0.9627  -8.414   <0.001 ***
## T3 - T2 == 0  -2.4100     0.9627  -2.503   0.0783 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## (Adjusted p values reported -- single-step method)

Se puede observar que existen diferencia significativas entre los T2-T1 y T3-T1 .