En una empresa lechera se han tenido problemas con la viscosidad de cierta bebida de chocolate. Se cree que con tres ingredientes que se agregan en pequeñas cantidades se puede resol ver este problema, por lo que es necesario explorar la situación; para ello se corre un experimento \(2^3\) con dos réplicas. A continuación, se aprecian los resultados obtenidos(Pulido & Vara Salazar, 2012):
Ingrediente A | Ingrediente B | Ingrediente C | Viscosidad |
---|---|---|---|
-1 | -1 | -1 | 13.3, 13.9 |
+1 | -1 | -1 | 14.7, 14.4 |
-1 | +1 | -1 | 14.6, 14.9 |
+1 | +1 | -1 | 14.3, 14.1 |
-1 | -1 | +1 | 16.9, 17.2 |
+1 | -1 | +1 | 15.5, 15.1 |
-1 | +1 | +1 | 17.4, 17.1 |
+1 | +1 | +1 | 18.9, 19.2 |
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 4 variables:
## $ Ingrediente_A: int -1 1 -1 1 -1 1 -1 1 -1 1 ...
## $ Ingrediente_B: int -1 -1 1 1 -1 -1 1 1 -1 -1 ...
## $ Ingrediente_C: int -1 -1 -1 -1 1 1 1 1 -1 -1 ...
## $ Viscosidad : num 13.3 14.7 14.6 14.3 16.9 15.5 17.4 18.9 13.9 14.4 ...
attach(datos)
Para resolver el ejercicio, se reescribe la tabla, de manera que sea interpretada como variables.
head(datos, n= 64L)
Ingrediente_A | Ingrediente_B | Ingrediente_C | Viscosidad |
---|---|---|---|
-1 | -1 | -1 | 13.3 |
1 | -1 | -1 | 14.7 |
-1 | 1 | -1 | 14.6 |
1 | 1 | -1 | 14.3 |
-1 | -1 | 1 | 16.9 |
1 | -1 | 1 | 15.5 |
-1 | 1 | 1 | 17.4 |
1 | 1 | 1 | 18.9 |
-1 | -1 | -1 | 13.9 |
1 | -1 | -1 | 14.4 |
-1 | 1 | -1 | 14.9 |
1 | 1 | -1 | 14.1 |
-1 | -1 | 1 | 17.2 |
1 | -1 | 1 | 15.1 |
-1 | 1 | 1 | 17.1 |
1 | 1 | 1 | 19.2 |
Para calcular los efectos de los factores, debemos considerar que en la ejecución de un diseño factorial completo de la familia \(2^3\) es necesario considerar el factor de interacción; el modelo matemático que relaciona los efectos de los factores en la variable de salida se escribe de la siguiente manera:
\[{u}={\alpha_i}+{β_i}+{\gamma _k}+{ \alpha}{β}{_{ij}}+{{ \alpha}{\gamma}_{ik}}+{{β\gamma _{jk}}}+{\alpha}{β}{\gamma _{ijk}}+εijk\]
Para determinar los efectos, utilizamos el siguiente código:
modelo=lm(Viscosidad~(Ingrediente_A+Ingrediente_B+Ingrediente_C+Ingrediente_A*Ingrediente_B+Ingrediente_A*Ingrediente_C+Ingrediente_B*Ingrediente_C+Ingrediente_A*Ingrediente_B*Ingrediente_C))
summary(modelo)
##
## Call:
## lm(formula = Viscosidad ~ (Ingrediente_A + Ingrediente_B + Ingrediente_C +
## Ingrediente_A * Ingrediente_B + Ingrediente_A * Ingrediente_C +
## Ingrediente_B * Ingrediente_C + Ingrediente_A * Ingrediente_B *
## Ingrediente_C))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.30 -0.15 0.00 0.15 0.30
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 15.71875 0.06281 250.252 < 2e-16
## Ingrediente_A 0.05625 0.06281 0.896 0.396647
## Ingrediente_B 0.59375 0.06281 9.453 1.29e-05
## Ingrediente_C 1.44375 0.06281 22.985 1.36e-08
## Ingrediente_A:Ingrediente_B 0.25625 0.06281 4.080 0.003536
## Ingrediente_A:Ingrediente_C -0.04375 0.06281 -0.697 0.505830
## Ingrediente_B:Ingrediente_C 0.39375 0.06281 6.269 0.000241
## Ingrediente_A:Ingrediente_B:Ingrediente_C 0.63125 0.06281 10.050 8.18e-06
##
## (Intercept) ***
## Ingrediente_A
## Ingrediente_B ***
## Ingrediente_C ***
## Ingrediente_A:Ingrediente_B **
## Ingrediente_A:Ingrediente_C
## Ingrediente_B:Ingrediente_C ***
## Ingrediente_A:Ingrediente_B:Ingrediente_C ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.2512 on 8 degrees of freedom
## Multiple R-squared: 0.9898, Adjusted R-squared: 0.9809
## F-statistic: 110.8 on 7 and 8 DF, p-value: 2.493e-07
Como podemos observar existe una interacción entre los factores, por ende la viscosidad puede ser cambiada por los ingredientes.
Se puede apreciar que el valor de el ingrediente_A si inflye en la viscosidad de la leche.
El ingrediente_B tambien resulta ser significativo, por ese este tambien influye en la viscosidad de la leche.
El ingrediente_C tambien resulta influir en la viscosidad de la leche.
Las interaciones que tienen los ingresientes A y B resulta ser significativo, puesto a que su interación resulta afectar la viscosidad de la leche.
Las interaciones que tienen los ingresientes B y C resulta ser significativos también, puesto a que su interación resulta afectar la viscosidad de la leche.
Podemos concluir diciendo que los tres ingredientes si influyen en la viscosidad de la leche, como lo puede representar el \(valor_p\) obtenido de la regresión lineal, puesto a que el \(valor_p<0.05\) es el valor significativo del ejercicio.
library(FrF2)
experimento=FrF2(nruns = 8 , nfactors = 3, factor.names = list(Ingrediente_A=c(-1,1),Ingrediente_B=c(-1,1),Ingrediente_C=c(-1,1)),replications = 2,randomize = FALSE)
experimento_respuesta=add.response(design=experimento,response = Viscosidad)
grafica_efectos_principales=MEPlot(experimento_respuesta, main= "Gráfica de Efectos Individuales")
grafica_interacciones=IAPlot(experimento_respuesta, main= "Gráfica de Interacciones")
head(grafica_efectos_principales)
Ingrediente_A | Ingrediente_B | Ingrediente_C | |
---|---|---|---|
- | 15.6625 | 15.1250 | 14.2750 |
+ | 15.7750 | 16.3125 | 17.1625 |
head(grafica_interacciones)
Ingrediente_A:Ingrediente_B | Ingrediente_A:Ingrediente_C | Ingrediente_B:Ingrediente_C | |
---|---|---|---|
-:- | 15.325 | 14.175 | 14.075 |
+:- | 14.925 | 14.375 | 14.475 |
-:+ | 16.000 | 17.150 | 16.175 |
+:+ | 16.625 | 17.175 | 18.150 |
Gráfica de efectos individuales
Como se puede apreciarde forma individual se observa en la gráfica de efectos individuales cuales son significativos, y en los efectos el que hace un mayor alteramiento es el ingrediente C, ya que de acuerdo con la gráfica este tiene una pendiente más pronunciada a comparación de los ingredientes A y B.
Gráfica de interacciones
En la gráfica de interacciones se puede observar como se comportan cuando se asocian los factores.
Y es de de observarse que en efecto, el ingrediente C es el factor preponderante, es el que altera a los demás ingredientes junto con el ingrediente B.
anova=aov(modelo)
summary(anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## Ingrediente_A 1 0.05 0.05 0.802 0.396647
## Ingrediente_B 1 5.64 5.64 89.356 1.29e-05
## Ingrediente_C 1 33.35 33.35 528.327 1.36e-08
## Ingrediente_A:Ingrediente_B 1 1.05 1.05 16.644 0.003536
## Ingrediente_A:Ingrediente_C 1 0.03 0.03 0.485 0.505830
## Ingrediente_B:Ingrediente_C 1 2.48 2.48 39.297 0.000241
## Ingrediente_A:Ingrediente_B:Ingrediente_C 1 6.38 6.38 101.000 8.18e-06
## Residuals 8 0.50 0.06
##
## Ingrediente_A
## Ingrediente_B ***
## Ingrediente_C ***
## Ingrediente_A:Ingrediente_B **
## Ingrediente_A:Ingrediente_C
## Ingrediente_B:Ingrediente_C ***
## Ingrediente_A:Ingrediente_B:Ingrediente_C ***
## Residuals
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Una vez hecho el analisis de ANOVA se puede observar que en terminos individuales el factor realmente significativo es el ingredinte C y el B, asi como en la de interacción con otros ingredientes de igual manera son significativos.
Como se observan los resultados en la prueba anterior ANOVA se puede apreciar que si existen efectos significativos puesto a que el \(\alpha=0.05\) y el \(valor_p>\alpha\) se muestra un valor menor a este ya sea en un valor individual o en una interaccion con otros, por lo que vemos que los ingredinetes significativos son los B, C, AB, CB Y AB. Y concluimos diciendo que estos valores si afe tan la viscosidad.
Lo que se puede hacer es una ANOVA pero no considerando los valores significativos, ya sea el ingrediente_A junto con la interacción AC. Pero si se hacen las interacciones de los ingredientes B, C, AB, BC Y ABC siguen siendo significativos. Por lo que conluimos que no hay algun tratamiento para minimizar estos efectos.
Para este ultimo inciso necesitamos hacer una prueba de adecuación, la cual seria una prueba de normalidad de los residuos de Shapiro-Wilk. Para ello utilizaremos la siguiente hipotesis.
\[H_{0}:R\,{\in}N\,({\mu=0},{\sigma^2}=Constante)\]
\[H_{1}:R\,{\notin}\,N\,({\mu=0},{\sigma^2}<Constante)\]
normalidad=shapiro.test(resid(modelo))
print(normalidad)
##
## Shapiro-Wilk normality test
##
## data: resid(modelo)
## W = 0.87343, p-value = 0.0307
En base a la prueba de Shapiro-Wilk podemor observar que el \(Valor_p\) es menor a \(0.05\), por lo tanto rechazamos la hipotesis nula y aceptamos la hipotesis alternativa. Por lo que concluimos que los datos no siguen una distribución normal.
qqnorm(resid(modelo), main= "Gráfica de Probabilidad para los Residuales del Modelo", xlab="Cuantiles Teoricos", ylab = "Cuantiles de muestra")
qqline(resid(modelo))
Para comprobar la homocedasticidad se realizara una prueba de varianzas de Bartlett. Para ello utilizaremos la siguiente hipotesis.
\[H_{0}:\sigma^{2}{i}=\sigma^{2}{j}=Constante\]
\[H_{1}:\sigma^{2}{i} \neq \sigma^{2}{j}\neq Constante\]
homocedasticidad=bartlett.test(resid(modelo),Ingrediente_A,Ingrediente_B,Ingrediente_C,data=experimento_respuesta)
print(homocedasticidad)
##
## Bartlett test of homogeneity of variances
##
## data: resid(modelo) and Ingrediente_A
## Bartlett's K-squared = 0.41308, df = 1, p-value = 0.5204
Como podemos observar los resultados por el analisis de homocedasticidad, se acepta la hipotesis nula ya que el \(Valor_p\) es mayor a \(0.05\) u concluimos que los datos siguen una distribución normal, por lo tanto el modelo es el adecuado.