1 Ejemplo

R.D Snee (“Expeimentación con un número grande de variables,” en Experiments in Industry: Desing, Analysis and Interpretation of Results, de R.D, snee, L.B. Hare y J.B. Trout, editores, ASQC) decribe un experimento en el que se usó un diseño \(2^{5-1}\) con I= ABCDE para investigar los efectos de cinco factores sobre el color de un producto químico. Los factores son A= solvente/reactivo, B= catalizador/reactivo, C= temperatura, D= pureza del reactivo y E= pH del reactivo. Los resultados obtenidos fueron los siguientes(montgomery2005diseno?):

Resultados Resultados
e=-0.63 d=6.79
a=2.51 ade=5.47
b=-2.68 bde=3.45
abe=1.66 abd=5.68
c=2.06 cde=5.22
ace=1.22 acd=4.38
bce=-2.09 bcd=4.30
abc=1.93 abcde=4.05

a) Construir una grafica de probabilidad normal de los efectos.¿Qué efectos parecen estar activos?

b) Calcular los residuales. Construir una gráfica de probabilidad normal de los residuales y graficar los residuales contra los valores ajustados. Comentar las gráficas.

c) Si algunos de los factores son significantes, plegar el diseño \(2^{5-1}\) a un diseño factorial completo en los factores activos. Comentar el diseño resultante e interpretar los resultados.

Desarrollo del ejercicio

a) Construir una grafica de probabilidad normal de los efectos.¿Qué efectos parecen estar activos?

library(printr)
datos=read.table("dataset.txt",header = TRUE,fill = TRUE)
str(datos)
## 'data.frame':    16 obs. of  6 variables:
##  $ Solvente_reactivoA   : int  -1 1 -1 1 -1 1 -1 1 -1 1 ...
##  $ Catalizador_reactivoB: int  -1 -1 1 1 -1 -1 1 1 -1 -1 ...
##  $ Temperatura_C        : int  -1 -1 -1 -1 1 1 1 1 -1 -1 ...
##  $ Pureza_reactivoD     : int  -1 -1 -1 -1 -1 -1 -1 -1 1 1 ...
##  $ PH_reactivoE         : int  1 -1 -1 1 -1 1 1 -1 1 1 ...
##  $ Resultados           : num  -0.63 2.51 -2.68 1.66 2.06 1.22 -2.09 1.93 6.79 5.47 ...
View(datos)
attach(datos)
head(datos,n=16L)
Solvente_reactivoA Catalizador_reactivoB Temperatura_C Pureza_reactivoD PH_reactivoE Resultados
-1 -1 -1 -1 1 -0.63
1 -1 -1 -1 -1 2.51
-1 1 -1 -1 -1 -2.68
1 1 -1 -1 1 1.66
-1 -1 1 -1 -1 2.06
1 -1 1 -1 1 1.22
-1 1 1 -1 1 -2.09
1 1 1 -1 -1 1.93
-1 -1 -1 1 1 6.79
1 -1 -1 1 1 5.47
-1 1 -1 1 1 3.45
1 1 -1 1 -1 5.68
-1 -1 1 1 1 5.22
1 -1 1 1 -1 4.38
-1 1 1 1 -1 4.30
1 1 1 1 1 4.05

Para este paso, se requerirá obtener la gráfica de Pareto y la de Daniel, estas gráficas darán evidencia de cuales son los efectos relevantes del experimento, con base en el Principio de Escasez. Para obtenerlas debemos correr el siguiente código:

library(FrF2)
Experimento= FrF2(nruns = 16, nfactors = 5, factor.names= list(Solvente_Reactivo_A=c(-1,1), Catalizador_Reactivo_B=c(-1,1), Temperatura_C=c(-1,1), Pureza_Reactivo_D=c(-1,1), PH_Reactivo_E=c(-1,1)), replications = 1, randomize = FALSE)
Experimento_respuesta=add.response(design = Experimento,response = Resultados)
halfnormal(Experimento_respuesta, xlab = "Efectos Activos")

En esta gráfica se puede observar que los efectos activos en el diseño experimental es el factor D (pureza). Por lo cual para confirmar la información que arroja la tabla, se verificara el gráfico de Daniel, mismo que se despoliega utilizando el siguiente código:

DanielPlot(Experimento_respuesta, main= "Gráfico de Daniel para el Alcohol Isoamílico")

En esta gráfica puede confirmarse la información que se obtuvo del ánalisis anterior, por lo que se concluye que los efectos activos son: los efectos principales del factor D (pureza) de acuerdo a esto se puede comprobar el principio de jerarquia y el Principio de herencia, ya que puede observarse que solo estan activos algunos efectos principales y algunas interacciones solas y dobles y de acuerdo a los factores e interacciones dobles se puede ver que no estan activas esto hace que tengan por lo menos factores que no sean activos en los principales.

b) Calcular los residuales. Construir una gráfica de probabilidad normal de los residuales y graficar los residuales contra los valores ajustados. Comentar las gráficas.

modelo=aov(Resultados ~ (Solvente_reactivoA*Catalizador_reactivoB*Temperatura_C*Pureza_reactivoD*PH_reactivoE))
summary(modelo)
##                                          Df Sum Sq Mean Sq
## Solvente_reactivoA                        1   6.86    6.86
## Catalizador_reactivoB                     1   7.18    7.18
## Temperatura_C                             1   0.09    0.09
## Pureza_reactivoD                          1  78.15   78.15
## PH_reactivoE                              1   0.63    0.63
## Solvente_reactivoA:Catalizador_reactivoB  1   7.16    7.16
## Solvente_reactivoA:Temperatura_C          1   2.07    2.07
## Catalizador_reactivoB:Temperatura_C       1   0.21    0.21
## Solvente_reactivoA:Pureza_reactivoD       1   8.23    8.23
## Catalizador_reactivoB:Pureza_reactivoD    1   0.10    0.10
## Temperatura_C:Pureza_reactivoD            1   2.62    2.62
## Solvente_reactivoA:PH_reactivoE           1   0.48    0.48
## Catalizador_reactivoB:PH_reactivoE        1   0.77    0.77
## Temperatura_C:PH_reactivoE                1   0.00    0.00
## Pureza_reactivoD:PH_reactivoE             1   0.14    0.14

De acuerdo a los resultados que se obtuvieron en la tabla de ANOVA para los efectos de los 5 factores sobre el color de producto químico se puede observar que el factor D (pureza) es significativo.

#---Gráfica de probabilidad normal---#
qqnorm(resid(modelo), main = "Gráfica de probabilidad para los Residuales del Modelo", xlab = "Cuantiles teoricos", ylab = "Cuantiles de muestra")
qqline(resid(modelo))

Los puntos muestran un comportamiento lineal por lo tanto se presenta un comportamiento normal y que corresponde al supuesto de normalidad.

homocedasticidad=bartlett.test(resid(modelo),Solvente_reactivoA, Catalizador_reactivoB,Temperatura_C, Pureza_Reactivo_D, PH_Reactivo_E,data=experimento_resp)
print(homocedasticidad)
## 
##  Bartlett test of homogeneity of variances
## 
## data:  resid(modelo) and Solvente_reactivoA
## Bartlett's K-squared = NaN, df = 1, p-value = NA

Los resultados presentan igualdad y por consecuencia son constantes y normales, el modelo de regresión si es el adecuado.

c) Si algunos de los factores son significantes, plegar el diseño \(2^{5-1}\) a un diseño factorial completo en los factores activos. Comentar el diseño resultante e interpretar los resultados.

Análisis de las interacciones mediante los gráficos correspondientes:

Grafica_interacciones=IAPlot(Experimento_respuesta)

head(Grafica_interacciones)
Solvente_Reactivo_A:Catalizador_Reactivo_B Solvente_Reactivo_A:Temperatura_C Solvente_Reactivo_A:Pureza_Reactivo_D Solvente_Reactivo_A:PH_Reactivo_E Catalizador_Reactivo_B:Temperatura_C Catalizador_Reactivo_B:Pureza_Reactivo_D Catalizador_Reactivo_B:PH_Reactivo_E Temperatura_C:Pureza_Reactivo_D Temperatura_C:PH_Reactivo_E Pureza_Reactivo_D:PH_Reactivo_E
-:- 3.360 1.7325 -0.835 2.6175 3.5350 1.290 3.9350 0.2150 3.0750 0.9550
+:- 3.395 3.8300 1.830 3.6250 2.0275 -0.295 2.3075 0.7800 3.1675 5.2875
-:+ 0.745 2.3725 4.940 1.4875 3.2200 5.465 2.8200 5.3475 2.4875 0.0400
+:+ 3.330 2.8950 4.895 3.1000 2.0475 4.370 1.7675 4.4875 2.1000 4.5475

Con los resultados obtenidos por medio a los calculos realizados y basándose a los resultados de la gráfica anterior se observa que existen interaciones fuertes entre los factores B:C, C:D, Y D:C. Por lo cual para afirmar que las interacciones son significativas se realiza la tabla anova del experimento, solo considerando las interacciones dobles.

modelo_Catalizador_Reactivo_B_Temperatura_C=lm(Resultados ~(Catalizador_reactivoB* Temperatura_C), data = datos)
summary(modelo_Catalizador_Reactivo_B_Temperatura_C)
## 
## Call:
## lm.default(formula = Resultados ~ (Catalizador_reactivoB * Temperatura_C), 
##     data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.7075 -1.3700  0.5212  2.0006  3.6525 
## 
## Coefficients:
##                                     Estimate Std. Error t value Pr(>|t|)   
## (Intercept)                          2.70750    0.74758   3.622   0.0035 **
## Catalizador_reactivoB               -0.67000    0.74758  -0.896   0.3878   
## Temperatura_C                       -0.07375    0.74758  -0.099   0.9230   
## Catalizador_reactivoB:Temperatura_C  0.08375    0.74758   0.112   0.9127   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.99 on 12 degrees of freedom
## Multiple R-squared:  0.06436,    Adjusted R-squared:  -0.1695 
## F-statistic: 0.2752 on 3 and 12 DF,  p-value: 0.8422
anova_Catalizador_Reactivo_B_Temperatura_C=aov(modelo_Catalizador_Reactivo_B_Temperatura_C)
summary(anova_Catalizador_Reactivo_B_Temperatura_C)
##                                     Df Sum Sq Mean Sq F value Pr(>F)
## Catalizador_reactivoB                1   7.18   7.182   0.803  0.388
## Temperatura_C                        1   0.09   0.087   0.010  0.923
## Catalizador_reactivoB:Temperatura_C  1   0.11   0.112   0.013  0.913
## Residuals                           12 107.30   8.942
modelo_Temperatura_C_Pureza_Reactivo_D=lm(Resultados ~(Temperatura_C*Pureza_reactivoD),data = datos)
summary(modelo_Temperatura_C_Pureza_Reactivo_D)
## 
## Call:
## lm.default(formula = Resultados ~ (Temperatura_C * Pureza_reactivoD), 
##     data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.8950 -0.5394  0.2275  1.1825  2.2950 
## 
## Coefficients:
##                                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                     2.70750    0.42342   6.394 3.43e-05 ***
## Temperatura_C                  -0.07375    0.42342  -0.174 0.864631    
## Pureza_reactivoD                2.21000    0.42342   5.219 0.000215 ***
## Temperatura_C:Pureza_reactivoD -0.35625    0.42342  -0.841 0.416599    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.694 on 12 degrees of freedom
## Multiple R-squared:  0.6999, Adjusted R-squared:  0.6248 
## F-statistic: 9.327 on 3 and 12 DF,  p-value: 0.001847
anova_Catalizador_Reactivo_B_Temperatura_C=aov(modelo_Catalizador_Reactivo_B_Temperatura_C)
summary(anova_Catalizador_Reactivo_B_Temperatura_C)
##                                     Df Sum Sq Mean Sq F value Pr(>F)
## Catalizador_reactivoB                1   7.18   7.182   0.803  0.388
## Temperatura_C                        1   0.09   0.087   0.010  0.923
## Catalizador_reactivoB:Temperatura_C  1   0.11   0.112   0.013  0.913
## Residuals                           12 107.30   8.942
modelo_solvente_Reactivo_A_Pureza_Reactivo_D=lm(Resultados ~(Solvente_reactivoA*Pureza_reactivoD),data = datos)
summary(modelo_solvente_Reactivo_A_Pureza_Reactivo_D)
## 
## Call:
## lm.default(formula = Resultados ~ (Solvente_reactivoA * Pureza_reactivoD), 
##     data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.8450 -0.6913 -0.0350  0.6012  2.8950 
## 
## Coefficients:
##                                     Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                           2.7075     0.3410   7.939 4.07e-06 ***
## Solvente_reactivoA                    0.6550     0.3410   1.921   0.0789 .  
## Pureza_reactivoD                      2.2100     0.3410   6.480 3.02e-05 ***
## Solvente_reactivoA:Pureza_reactivoD  -0.6775     0.3410  -1.987   0.0703 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.364 on 12 degrees of freedom
## Multiple R-squared:  0.8053, Adjusted R-squared:  0.7566 
## F-statistic: 16.54 on 3 and 12 DF,  p-value: 0.0001459
anova_Solvente_Reactivo_A_Pureza_Reactivo_D=aov(modelo_solvente_Reactivo_A_Pureza_Reactivo_D)
summary(anova_Solvente_Reactivo_A_Pureza_Reactivo_D)
##                                     Df Sum Sq Mean Sq F value   Pr(>F)    
## Solvente_reactivoA                   1   6.86    6.86   3.689   0.0789 .  
## Pureza_reactivoD                     1  78.15   78.15  41.991 3.02e-05 ***
## Solvente_reactivoA:Pureza_reactivoD  1   7.34    7.34   3.946   0.0703 .  
## Residuals                           12  22.33    1.86                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
modelo_Pureza_Reactivo_D_PH_Reactivo_E=lm(Resultados ~(Pureza_reactivoD*PH_reactivoE),data = datos)
summary(modelo_Pureza_Reactivo_D_PH_Reactivo_E)
## 
## Call:
## lm.default(formula = Resultados ~ (Pureza_reactivoD * PH_reactivoE), 
##     data = datos)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.635 -0.739  0.349  1.124  1.794 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                     2.6944     0.4327   6.227  4.4e-05 ***
## Pureza_reactivoD                2.1969     0.4327   5.078 0.000272 ***
## PH_reactivoE                   -0.1764     0.4327  -0.408 0.690647    
## Pureza_reactivoD:PH_reactivoE   0.2811     0.4327   0.650 0.528162    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.703 on 12 degrees of freedom
## Multiple R-squared:  0.6967, Adjusted R-squared:  0.6209 
## F-statistic: 9.188 on 3 and 12 DF,  p-value: 0.001963
anova_Pureza_Reactivo_PH_Reactivo_E=aov(modelo_Pureza_Reactivo_D_PH_Reactivo_E)
summary(anova_Pureza_Reactivo_PH_Reactivo_E)
##                               Df Sum Sq Mean Sq F value   Pr(>F)    
## Pureza_reactivoD               1  78.15   78.15  26.959 0.000225 ***
## PH_reactivoE                   1   0.53    0.53   0.184 0.675583    
## Pureza_reactivoD:PH_reactivoE  1   1.22    1.22   0.422 0.528162    
## Residuals                     12  34.78    2.90                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

En conclusion, el reactivo D es el de mayor significancia dado que el reactivo con las interacciones B y C, A y D en la intervención del PH del reactivo E, resultan también ser significativas por este modelo, mientras las otras intervenciones no tienen significancia, por lo tanto existen significancias entre la temperatura de los solventes y la pureza de los reactivos.

Bibliografia
Montgomery, D. C. (2005). Diseño y análisis de experimentos. Limusa Wiley.