Diseños Factoriales Fraccionados

Considere un experimento 25 – 1 con I = ABCDE que fue utilizado para investigar los efectos de cinco factores sobre el color de un producto químico. Los factores son A = solvente/reactante, B = catalizador/reactante, C = temperatura, D = pureza del reactante y E = acidez del reactante. Los resultados obtenidos son los siguientes:
e –.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
Lo primero que debe realizarse es definir la fracción de trabajo. En este caso se tomó la fracción principal con generador I=ABCDE, por lo que se generó el factor E con el alias E=ABCD, para lo cual se multiplicaron elemento a elemento las columnas de los factores A, B, C y D, obteniéndose con esto las corridas que se utilizarán para estimar los efectos del experimento. La tabla de datos se muestra a continuación:
library(printr)
## Registered S3 method overwritten by 'printr':
##   method                from     
##   knit_print.data.frame rmarkdown
datos=read.table("dataset.txt",header= TRUE)
str(datos)
## 'data.frame':    16 obs. of  7 variables:
##  $ A       : int  -1 1 -1 1 -1 1 -1 1 -1 1 ...
##  $ B       : int  -1 -1 1 1 -1 -1 1 1 -1 -1 ...
##  $ C       : int  -1 -1 -1 -1 1 1 1 1 -1 -1 ...
##  $ D       : int  -1 -1 -1 -1 -1 -1 -1 -1 1 1 ...
##  $ E       : int  1 -1 -1 1 -1 1 1 -1 -1 1 ...
##  $ Notacion: chr  "e" "a" "b" "abe" ...
##  $ Color   : num  -0.63 2.51 2.68 1.66 2.06 1.22 2.09 1.93 6.79 5.47 ...
attach(datos)
head(datos,n=16L)
A B C D E Notacion Color
-1 -1 -1 -1 1 e -0.63
1 -1 -1 -1 -1 a 2.51
-1 1 -1 -1 -1 b 2.68
1 1 -1 -1 1 abe 1.66
-1 -1 1 -1 -1 c 2.06
1 -1 1 -1 1 ace 1.22
-1 1 1 -1 1 bce 2.09
1 1 1 -1 -1 abc 1.93
-1 -1 -1 1 -1 d 6.79
1 -1 -1 1 1 ade 5.47
-1 1 -1 1 1 bde 3.45
1 1 -1 1 -1 abd 5.68
-1 -1 1 1 1 cde 5.22
1 -1 1 1 -1 acd 4.38
-1 1 1 1 -1 bcd 4.30
1 1 1 1 1 abcde 4.05
Se deberá verificar cuales son los efectos activos. Para este paso, se requerirá obtener la gráfica de Pareto y la de Daniel, estas grrá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)
## Loading required package: DoE.base
## Loading required package: grid
## Loading required package: conf.design
## Registered S3 method overwritten by 'DoE.base':
##   method           from       
##   factorize.factor conf.design
## 
## Attaching package: 'DoE.base'
## The following objects are masked from 'package:stats':
## 
##     aov, lm
## The following object is masked from 'package:graphics':
## 
##     plot.design
## The following object is masked from 'package:base':
## 
##     lengths
experimento=FrF2(nruns = 16, nfactors = 5, factor.names = list(A=c(-1,1),B=c(-1,1),C=c(-1,1),D=c(-1,1),E=c(-1,1)),generators = "ABCD",replications = 1,randomize = FALSE)
experimento_respuesta=add.response(design = experimento,response = Color)
halfnormal(experimento_respuesta, xlab = "Color del producto quimico")
## 
## Significant effects (alpha=0.05, Lenth method):
## [1] D1    E1    C1:E1 B1:D1
En esta gráfica se puede observar que los efectos activos en el diseño experimental son el efecto del factor D y el del factor E, y las interacciones dobles CE y BD. Para confirmar, se verifica el gráfico de Daniel, mismo que se despliega utilizando el siguiente código:
DanielPlot(experimento_respuesta, main= "Gráfico de Daniel para el Color obtenido")
En esta grafica puede confirmarse la información que se obtuvo del análisis anterior, por lo que se concluye que los efectos activos son: los efectos principales de los factores D y E y las interacciones dobles BD y CE. Con esto pueden comprobarse también el Principio de Jerarquía y el Principio de Herencia, dado que, es notorio que sólo están activos algunos efectos principales y algunas interacciones dobles, situación que fue planteada en el principio de jerarquía; y en el caso de las interacciones dobles, es notorio que las interaciones que están activas tienen por lo menos un factor activo en los principales. Ahora procedermos a revisar la gráfica de efectos principales, para poder verificar cuáles provocan cambios en el color obtenido, utilizando el siguiente comando:
efectos_principales=MEPlot(experimento_respuesta)

head(efectos_principales)
A B C D E
- 3.2450 3.3775 3.45125 1.6900 3.79125
+ 3.3625 3.2300 3.15625 4.9175 2.81625

Del al gráfica de efectos individuales, es muy notorio que el factor D (pureza) afecta significativamente al color obtenido del producto químico.

Ahora procederemos a analizar las interacciones, mediante la gráfica correspondiente:
grafica_interacciones=IAPlot(experimento_respuesta)

head(grafica_interacciones)
A:B A:C A:D A:E B:C B:D B:E C:D C:E D:E
-:- 3.360 3.0725 1.550 3.9575 3.5350 1.290 3.9350 1.5550 4.4150 2.2950
+:- 3.395 3.8300 1.830 3.6250 3.3675 2.090 3.6475 1.8250 3.1675 5.2875
-:+ 3.130 3.4175 4.940 2.5325 3.2200 5.465 2.8200 5.3475 2.4875 1.0850
+:+ 3.330 2.8950 4.895 3.1000 3.0925 4.370 2.8125 4.4875 3.1450 4.5475
De la gráfica anterior, podemos ver que existen interacciones fuertes en los efectos: AD, BD, CD Y DE. Para probar si las interacciones son significativas, procederemos a realizar la tabla ANOVA del experimento, pero considerando unidamente hasta las interacciones dobles, esto se realiza mediante el siguiente código:
modelo_a_d=lm(Color~(A*D),data = datos)
summary(modelo_a_d)
## 
## Call:
## lm.default(formula = Color ~ (A * D), data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.1800 -0.6175  0.1900  0.6012  1.8500 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  3.30375    0.28423  11.623 6.89e-08 ***
## A            0.05875    0.28423   0.207 0.839711    
## D            1.61375    0.28423   5.678 0.000103 ***
## A:D         -0.08125    0.28423  -0.286 0.779860    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.137 on 12 degrees of freedom
## Multiple R-squared:  0.7295, Adjusted R-squared:  0.6619 
## F-statistic: 10.79 on 3 and 12 DF,  p-value: 0.001007
anova_a_d=aov(modelo_a_d)
summary(anova_a_d)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## A            1   0.06    0.06   0.043 0.839711    
## D            1  41.67   41.67  32.235 0.000103 ***
## A:D          1   0.11    0.11   0.082 0.779860    
## Residuals   12  15.51    1.29                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
modelo_b_d=lm(Color~(B*D),data = datos)
summary(modelo_b_d)
## 
## Call:
## lm.default(formula = Color ~ (B * D), data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.9200 -0.3475 -0.0700  0.6350  1.3250 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  3.30375    0.24994  13.218 1.63e-08 ***
## B           -0.07375    0.24994  -0.295   0.7730    
## D            1.61375    0.24994   6.457 3.13e-05 ***
## B:D         -0.47375    0.24994  -1.895   0.0824 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9997 on 12 degrees of freedom
## Multiple R-squared:  0.7908, Adjusted R-squared:  0.7385 
## F-statistic: 15.12 on 3 and 12 DF,  p-value: 0.0002225
anova_b_d=aov(modelo_b_d)
summary(anova_b_d)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## B            1   0.09    0.09   0.087   0.7730    
## D            1  41.67   41.67  41.688 3.13e-05 ***
## B:D          1   3.59    3.59   3.593   0.0824 .  
## Residuals   12  11.99    1.00                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
modelo_c_d=lm(Color~(C*D),data = datos)
summary(modelo_c_d)
## 
## Call:
## lm.default(formula = Color ~ (C * D), data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.1850 -0.2500  0.1138  0.4325  1.4425 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   3.3038     0.2705  12.214 3.97e-08 ***
## C            -0.1475     0.2705  -0.545    0.596    
## D             1.6138     0.2705   5.966 6.55e-05 ***
## C:D          -0.2825     0.2705  -1.044    0.317    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.082 on 12 degrees of freedom
## Multiple R-squared:  0.755,  Adjusted R-squared:  0.6938 
## F-statistic: 12.33 on 3 and 12 DF,  p-value: 0.0005634
anova_c_d=aov(modelo_c_d)
summary(anova_c_d)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## C            1   0.35    0.35   0.297    0.596    
## D            1  41.67   41.67  35.595 6.55e-05 ***
## C:D          1   1.28    1.28   1.091    0.317    
## Residuals   12  14.05    1.17                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
modelo_d_e=lm(Color~(D*E),data = datos)
summary(modelo_d_e)
## 
## Call:
## lm.default(formula = Color ~ (D * E), data = datos)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -1.7150 -0.6000  0.1750  0.5994  1.5025 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   3.3038     0.2463  13.413 1.39e-08 ***
## D             1.6138     0.2463   6.552 2.72e-05 ***
## E            -0.4875     0.2463  -1.979   0.0712 .  
## D:E           0.1175     0.2463   0.477   0.6419    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9852 on 12 degrees of freedom
## Multiple R-squared:  0.7968, Adjusted R-squared:  0.7461 
## F-statistic: 15.69 on 3 and 12 DF,  p-value: 0.0001873
anova_d_e=aov(modelo_d_e)
summary(anova_d_e)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## D            1  41.67   41.67  42.924 2.72e-05 ***
## E            1   3.80    3.80   3.917   0.0712 .  
## D:E          1   0.22    0.22   0.228   0.6419    
## Residuals   12  11.65    0.97                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
El efecto significativo, como se vió desde la tabla de efectos individuales, es el efecto D que corresponde la pureza del reactante, esto quiere decir que un cambio mínimo de este cambiará de forma significativa al color del producto químico.