Instalacion de paquetes.

knitr::opts_chunk$set(echo = TRUE, warning = FALSE, message = FALSE)
# Descomenta las siguientes líneas si aún no tienes instalados los paquetes en tu R
# install.packages("car")
# install.packages("ggplot2")
# install.packages("GLMsData")
# install.packages("lmtest")
# install.packages("agricolae")

library(car)
## Loading required package: carData
library(ggplot2)
library(GLMsData)
library(lmtest)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(knitr)
library(agricolae)

1) Identificacion del diseño experimental

DATOS

corrida <- 1:20
temperatura <- c(180, 220, 180, 180, 220, 220, 200, 200, 220, 180, 
                 200, 200, 180, 240, 240, 220, 240, 240, 200, 240)
espesor <- c(113.9, 134.0, 114.0, 112.8, 143.9, 136.8, 131.0, 129.2, 140.5, 116.9,
             129.4, 125.3, 111.1, 149.1, 140.8, 141.0, 136.3, 144.4, 122.6, 139.3)

# Creamos el dataframe
datos <- data.frame(Corrida = corrida, Temperatura = factor(temperatura), Espesor = espesor)

Factor: La temperatura de extrusión. Niveles: hay 4 niveles los cuales son: (\(180\), \(200\), \(220\) y \(240\) °C) Variable r: El espesor de la película plástica medido en micrómetros Réplicas: 5 réplicas por cada tratamiento (para un total de 20 corridas experimentales). Unidad experimental: Cada corrida individual realizada en la misma extrusora bajo una condición de temperatura asignada aleatoriamente Justificación del efecto fijo: Se trata de un diseño de efectos fijos porque los niveles de temperatura no se tomaron al azar de una población de temperaturas posibles, sino que el ingeniero de procesos seleccionó deliberadamente esos cuatro valores específicos (\(180, 200, 220 \text{ y } 240\) °C)

2) Modelo y hipotesis

El modelo estadístico lineal aditivo es:\[y_{ij} = \mu + \tau_i + \epsilon_{ij}\] Donde: \(y_{ij}\): Observación de la respuesta (espesor) en la \(j\)-ésima réplica del \(i\)-ésimo tratamiento (temperatura).

\(\mu\): Media global del proceso. \(\tau_i\): Efecto del \(i\)-ésimo tratamiento (temperatura). \(\epsilon_{ij}\): Error aleatorio experimental, distribuido normalmente e independientemente con media cero y varianza \(\sigma^2\) (\(\epsilon_{ij} \sim N(0, \sigma^2)\)). Hipotesis: Hipótesis nula (\(H_0\)): No hay diferencia en el espesor medio de la película plástica entre las diferentes temperaturas de extrusión. \[\tau_1 = \tau_2 = \tau_3 = \tau_4 = 0 \quad (\mu_1 = \mu_2 = \mu_3 = \mu_4)\] Hipótesis alternativa (\(H_1\)): Al menos una temperatura produce un espesor medio diferente al de las demás.\[\tau_i \neq 0 \text{ para al menos un } i\]

3) Estadisticos descriptivos

library(dplyr)

resumen <- datos %>%
  group_by(Temperatura) %>%
  summarise(
    n = n(),
    Media = mean(Espesor),
    Desv_Est = sd(Espesor),
    Suma = sum(Espesor)
  )

media_global <- mean(datos$Espesor)
suma_global <- sum(datos$Espesor)
n_global <- nrow(datos)

kable(resumen, digits = 4, caption = "Estadísticos descriptivos por nivel de temperatura")
Estadísticos descriptivos por nivel de temperatura
Temperatura n Media Desv_Est Suma
180 5 113.74 2.1173 568.7
200 5 127.50 3.4496 637.5
220 5 139.24 3.8669 696.2
240 5 141.98 4.9343 709.9
cat(sprintf("Media global: %.4f | Suma global: %.4f | N total: %d\n", media_global, suma_global, n_global))
## Media global: 130.6150 | Suma global: 2612.3000 | N total: 20

Interpretación: Se puede observar que, al aumentar la temperatura de extrusión, también aumenta la media del espesor. La media pasa de 113.7400 micrómetros a una temperatura de 180 °C, a 141.9800 micrómetros a 240 °C. En cuanto a la desviación estándar, los valores se encuentran entre 2.1173 y 4.9343 micrómetros, lo que indica que la variabilidad dentro de los grupos no es muy alta. Finalmente, la media general de todos los datos del experimento es de 130.6150 micrómetros.

4) TAbla anova

modelo_aov <- aov(Espesor ~ Temperatura, data = datos)
tabla_anova <- summary(modelo_aov)
print(tabla_anova)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Temperatura  3 2490.1   830.0   59.63 6.64e-09 ***
## Residuals   16  222.7    13.9                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
anova_df <- anova(modelo_aov)
f_val <- anova_df$`F value`[1]
p_val <- anova_df$`Pr(>F)`[1]

Interpretación: La tabla ANOVA muestra un estadístico F calculado de 59.6259 y un valor p de < 1e-04. Como el valor p es menor que el nivel de significancia de 0.05 (p < 0.0001), se rechaza la hipótesis nula (H₀). Por lo tanto, se puede concluir que existe evidencia estadística suficiente para afirmar que la temperatura de extrusión tiene un efecto significativo sobre el espesor de la película plástica.

5) Estimadores del modelo

# Varianza residual (sigma^2)
mse <- anova_df$`Mean Sq`[2]
sp <- sqrt(mse)

# Efectos estimados ti = media_i - media_global
medias_tratamiento <- tapply(datos$Espesor, datos$Temperatura, mean)
efectos <- medias_tratamiento - media_global

cat(sprintf("Estimador de la varianza residual (sigma^2): %.4f\n", mse))
## Estimador de la varianza residual (sigma^2): 13.9207
cat(sprintf("Desviación estándar ponderada (sp): %.4f\n", sp))
## Desviación estándar ponderada (sp): 3.7311
cat("\nEfectos estimados (ti):\n")
## 
## Efectos estimados (ti):
print(round(efectos, 4))
##     180     200     220     240 
## -16.875  -3.115   8.625  11.365

Interpretación: Los intervalos de confianza del 95% muestran el rango en el que se espera que se encuentre la verdadera media del espesor para cada temperatura. Por ejemplo, para una temperatura de 240 °C, la media real del espesor se encuentra entre 138.4438 µm y 145.5162 µm, con un nivel de confianza del 95%. Además, se puede observar que los intervalos de las temperaturas de 180 °C y 240 °C no se superponen, lo que indica que existen diferencias entre las medias de estas temperaturas. #6

gl_error <- anova_df$Df[2]
t_crit <- qt(0.975, df = gl_error)

ic_df <- resumen %>%
  mutate(
    Error_Est = Desv_Est / sqrt(n),
    Limite_Inferior = Media - t_crit * Error_Est,
    Limite_Superior = Media + t_crit * Error_Est
  )

kable(ic_df %>% select(Temperatura, Media, Limite_Inferior, Limite_Superior), digits = 4, caption = "Intervalos de confianza del 95%")
Intervalos de confianza del 95%
Temperatura Media Limite_Inferior Limite_Superior
180 113.74 111.7327 115.7473
200 127.50 124.2296 130.7704
220 139.24 135.5740 142.9060
240 141.98 137.3021 146.6579

7) efectos principales

medias_df <- data.frame(
  Temperatura = levels(datos$Temperatura),
  Media = tapply(datos$Espesor, datos$Temperatura, mean)
)
medias_df$Temperatura <- as.numeric(as.character(medias_df$Temperatura))

ggplot(medias_df, aes(x = Temperatura, y = Media)) +
  geom_line(color = "steelblue", linewidth = 1.2) +
  geom_point(size = 3.5, color = "darkblue") +
  geom_hline(yintercept = media_global, linetype = "dashed", color = "red", linewidth = 1) +
  annotate("text", x = 190, y = media_global + 2, label = paste("Media Global =", round(media_global, 2)), color = "red") +
  labs(title = "Gráfica de Efectos Principales",
       subtitle = "Espesor medio vs. Temperatura de extrusión",
       x = "Temperatura (°C)", y = "Espesor Promedio (µm)") +
  theme_minimal()

Interpretación: La gráfica muestra una relación positiva y casi lineal entre la temperatura de extrusión y el espesor de la película. A medida que aumenta la temperatura, también aumenta el espesor promedio de forma constante. La línea roja discontinua representa la media general, que es de 130.6150 µm. Se puede observar que las temperaturas de 180 °C y 200 °C se encuentran por debajo de esta media, mientras que las temperaturas de 220 °C y 240 °C se encuentran por encima.

8) intervalos de confianza (graficos)

ggplot(ic_df, aes(x = Temperatura, y = Media)) +
  geom_pointrange(aes(ymin = Limite_Inferior, ymax = Limite_Superior), color = "darkblue", size = 0.8) +
  geom_hline(yintercept = media_global, linetype = "dashed", color = "red") +
  labs(title = "Intervalos de Confianza del 95% para el Espesor",
       x = "Temperatura (°C)", y = "Espesor Medio y IC 95%") +
  theme_minimal()

Interpretación:

Al revisar el traslape de los intervalos, se puede observar que los intervalos correspondientes a las temperaturas de 180 °C y 200 °C no se superponen con los de 220 °C y 240 °C. Por otro lado, sí se presenta un pequeño traslape entre 180 °C y 200 °C, y también entre 220 °C y 240 °C.

Coherencia con el ANOVA: Este comportamiento es coherente con los resultados obtenidos en la tabla ANOVA, donde se encontraron diferencias significativas entre las temperaturas. Sin embargo, para conocer exactamente entre qué temperaturas existen diferencias significativas, es necesario realizar las pruebas de comparaciones múltiples.

9) Verificacion de supuestos

datos$ajustados <- fitted(modelo_aov)
datos$residuales <- residuals(modelo_aov)

GRAFICAS

par(mfrow = c(2, 2))
# 1. Normal Q-Q plot
qqnorm(datos$residuales, main = "a) Q-Q Normal de Residuales")
qqline(datos$residuales, col = "red", lwd = 2)

# 2. Residuales vs Ajustados
plot(datos$ajustados, datos$residuales, main = "b) Residuales vs Ajustados",
     xlab = "Valores Ajustados", ylab = "Residuales")
abline(h = 0, lty = 2, col = "red")

# 3. Histograma de residuales
hist(datos$residuales, main = "c) Histograma de Residuales", xlab = "Residuales", col = "lightblue", border = "white")

# 4. Residuales vs Orden de ejecución
plot(datos$Corrida, datos$residuales, main = "d) Residuales vs Orden",
     xlab = "Orden de Corrida", ylab = "Residuales", type = "b")
abline(h = 0, lty = 2, col = "red")

par(mfrow = c(1, 1))

Interpretación de las gráficas:

*a) Gráfica de probabilidad normal: Los puntos siguen de forma aproximada la línea diagonal, por lo que se puede considerar que los errores presentan un comportamiento cercano a una distribución normal.

*b) Residuales vs. valores ajustados: Los puntos se encuentran distribuidos alrededor de cero y no se observa un patrón claro ni una forma de embudo. Esto indica que las varianzas son aproximadamente iguales.

*c) Histograma de residuales: El histograma presenta una forma aproximadamente acampanada y simétrica, lo que apoya el supuesto de normalidad de los errores.

*d) Residuales vs. orden de ejecución: Los residuales no presentan una tendencia o patrón definido a medida que avanza el orden de las observaciones. Por lo tanto, se considera que los errores son independientes.

Prueba

# Prueba de normalidad Shapiro-Wilk
shapiro_test <- shapiro.test(datos$residuales)
print(shapiro_test)
## 
##  Shapiro-Wilk normality test
## 
## data:  datos$residuales
## W = 0.97588, p-value = 0.8707
# Prueba de homocedasticidad Levene
levene_test <- leveneTest(Espesor ~ Temperatura, data = datos)
print(levene_test)
## Levene's Test for Homogeneity of Variance (center = median)
##       Df F value Pr(>F)
## group  3  0.6104  0.618
##       16

Prueba de Shapiro-Wilk: Se obtiene un valor p mayor a 0.05, por lo que no se rechaza la hipótesis de normalidad. Esto indica que los errores presentan una distribución aproximadamente normal.

Prueba de Levene: Se obtiene un valor p mayor a 0.05, por lo que no se rechaza la hipótesis de igualdad de varianzas. Esto indica que se cumple el supuesto de homogeneidad de varianzas entre los tratamientos.

10) Tukey

tukey_res <- HSD.test(modelo_aov, "Temperatura", group = TRUE)
print(tukey_res)
## $statistics
##    MSerror Df    Mean       CV      MSD
##   13.92075 16 130.615 2.856527 6.751219
## 
## $parameters
##    test      name.t ntr StudentizedRange alpha
##   Tukey Temperatura   4         4.046093  0.05
## 
## $means
##     Espesor      std r       se   Min   Max   Q25   Q50   Q75
## 180  113.74 2.117310 5 1.668577 111.1 116.9 112.8 113.9 114.0
## 200  127.50 3.449638 5 1.668577 122.6 131.0 125.3 129.2 129.4
## 220  139.24 3.866911 5 1.668577 134.0 143.9 136.8 140.5 141.0
## 240  141.98 4.934268 5 1.668577 136.3 149.1 139.3 140.8 144.4
## 
## $comparison
## NULL
## 
## $groups
##     Espesor groups
## 240  141.98      a
## 220  139.24      a
## 200  127.50      b
## 180  113.74      c
## 
## attr(,"class")
## [1] "group"

Interpretación:

La prueba de Tukey, utilizando un nivel de significancia de 0.05, permite agrupar las temperaturas por las diferencias entre sus medias:

Grupo a (240 °C): presenta una media de 141.9800 µm y no presenta una diferencia significativa con 220 °C. Grupo ab (220 °C): presenta una media de 139.2400 µm y comparte grupo con 240 °C, por lo que no hay una diferencia significativa entre estas dos temperaturas. Grupo b (200 °C): presenta una media de 127.5000 µm y presenta diferencias significativas con las temperaturas más altas. Grupo c (180 °C): presenta una media de 113.7400 µm y presenta diferencias significativas con las demás temperaturas.

En general, los resultados muestran que las temperaturas más altas tienden a producir un mayor espesor de la película.

11) conclusion de ingenieria

Para elegir la temperatura más adecuada para el proceso se tuvo en cuenta que el espesor de la película debe ser de mínimo 138 µm. También se consideró el consumo de energía, ya que trabajar con temperaturas más altas puede aumentar los costos del proceso.

Al revisar los resultados, las temperaturas de 180 °C y 200 °C no son una buena opción, ya que presentaron medias de 113.74 µm y 127.50 µm, respectivamente. En ambos casos el espesor está por debajo de lo requerido, por lo que no cumplen con la condición establecida para el producto.

Por otro lado, a 220 °C se obtuvo una media de 139.24 µm y a 240 °C una media de 141.98 µm. Las dos temperaturas cumplen con el mínimo de 138 µm. Sin embargo, la prueba de Tukey muestra que entre estas dos temperaturas no existe una diferencia estadísticamente significativa. Esto indica que el aumento de 220 °C a 240 °C no genera un cambio suficientemente grande en el espesor como para considerarlo una diferencia real en el proceso.

Teniendo esto en cuenta, no sería necesario utilizar 240 °C solamente para obtener un promedio un poco mayor, especialmente si esto implica un mayor consumo de energía. Por esta razón, la temperatura de 220 °C resulta ser la alternativa más conveniente, ya que permite cumplir con el espesor requerido y mantener una temperatura de trabajo menor.

En conclusión, se recomienda utilizar 220 °C, porque cumple con la especificación del producto y, según la prueba de Tukey, proporciona un resultado estadísticamente similar al de 240 °C, sin tener que trabajar a una temperatura más alta de la necesaria.