Estudiante: Emanuel Mulett Ortega
Codigo Estudiantil: 1102825591
En esta actividad se utiliza el dataset “acero.csv”, que contiene información relacionada con variables del proceso productivo. A partir de estos datos se realizará el análisis estadístico solicitado en la actividad.
acero <- read.csv("acero.csv", dec = ",")
acero
# Muestra la estructura del dataset
str(acero)
## 'data.frame': 117 obs. of 20 variables:
## $ consumo : num 135.3 84.1 131.6 90.5 120 ...
## $ pr.tbc : int 6840 443 7270 5031 9365 9281 3223 10490 7394 8654 ...
## $ pr.cc : int 830 903 572 694 1054 1003 1118 1077 1204 851 ...
## $ pr.ca : int 0 58 36 122 157 172 0 179 167 0 ...
## $ pr.galv1 : int 579 611 982 896 403 605 643 737 580 828 ...
## $ pr.galv2 : int 1401 1636 1963 1568 1480 1525 1424 1333 934 1326 ...
## $ pr.pint : int 0 717 243 0 0 473 732 93 247 607 ...
## $ linea : chr "A" "A" "A" "A" ...
## $ hora : chr "1º" "2º" "3º" "4º" ...
## $ temperatura: chr "Alta" "Alta" "Baja" "Baja" ...
## $ averias : chr "Si" "No" "No" "No" ...
## $ naverias : int 1 0 0 0 0 1 0 0 0 3 ...
## $ sistema : chr "OFF" "OFF" "OFF" "ON" ...
## $ ProdTotal : int 11266 7251 11066 8311 12459 13059 8555 18253 11697 13194 ...
## $ NOx : num 0.49 0.0725 1.49 1.715 0.465 ...
## $ CO : num 3.54 2.9 5.01 2.16 4.84 ...
## $ COV : num 0.545 0.425 0.69 0.36 0.662 ...
## $ SO2 : num 0.038 0.047 0.062 0.066 0.086 0.056 0.07 0.103 0.058 0.066 ...
## $ CO2 : num 101.5 63.6 98.8 70.2 88.5 ...
## $ N2O : num 6.35 2.23 5.99 3.66 6.06 6.15 7.75 9.09 8.69 5 ...
# Muestra los nombres de las variables del dataset
names(acero)
## [1] "consumo" "pr.tbc" "pr.cc" "pr.ca" "pr.galv1"
## [6] "pr.galv2" "pr.pint" "linea" "hora" "temperatura"
## [11] "averias" "naverias" "sistema" "ProdTotal" "NOx"
## [16] "CO" "COV" "SO2" "CO2" "N2O"
# Muestra un resumen de las variables
summary(acero)
## consumo pr.tbc pr.cc pr.ca
## Min. : 17.50 Min. : 0 Min. : 0.0 Min. : 0.0
## 1st Qu.: 99.09 1st Qu.: 5950 1st Qu.: 0.0 1st Qu.: 0.0
## Median :140.07 Median : 8808 Median : 80.0 Median : 0.0
## Mean :139.46 Mean : 7568 Mean : 295.5 Mean :124.5
## 3rd Qu.:182.48 3rd Qu.: 9734 3rd Qu.: 582.0 3rd Qu.:248.0
## Max. :290.72 Max. :10979 Max. :1204.0 Max. :677.0
## pr.galv1 pr.galv2 pr.pint linea hora
## Min. : 0.0 Min. : 0 Min. : 0.0 Length :117 Length :117
## 1st Qu.: 0.0 1st Qu.: 933 1st Qu.: 0.0 N.unique : 3 N.unique : 8
## Median :432.0 Median :1360 Median : 0.0 N.blank : 0 N.blank : 0
## Mean :402.8 Mean :1160 Mean :188.6 Min.nchar: 1 Min.nchar: 2
## 3rd Qu.:698.0 3rd Qu.:1567 3rd Qu.:394.0 Max.nchar: 1 Max.nchar: 2
## Max. :982.0 Max. :1963 Max. :898.0
## temperatura averias naverias sistema
## Length :117 Length :117 Min. :0.0000 Length :117
## N.unique : 3 N.unique : 2 1st Qu.:0.0000 N.unique : 2
## N.blank : 0 N.blank : 0 Median :0.0000 N.blank : 0
## Min.nchar: 4 Min.nchar: 2 Mean :0.6752 Min.nchar: 2
## Max.nchar: 5 Max.nchar: 2 3rd Qu.:0.0000 Max.nchar: 3
## Max. :4.0000
## ProdTotal NOx CO COV
## Min. : 2187 Min. :0.0125 Min. : 0.250 Min. :0.0250
## 1st Qu.: 9023 1st Qu.:0.7750 1st Qu.: 2.928 1st Qu.:0.4525
## Median :11860 Median :1.1200 Median : 4.107 Median :0.6250
## Mean :11842 Mean :1.1961 Mean : 4.377 Mean :0.6210
## 3rd Qu.:14908 3rd Qu.:1.6550 3rd Qu.: 5.585 3rd Qu.:0.7850
## Max. :23202 Max. :2.7750 Max. :10.170 Max. :1.2550
## SO2 CO2 N2O
## Min. :0.0010 Min. : 14.29 Min. : 0.870
## 1st Qu.:0.0540 1st Qu.: 73.72 1st Qu.: 4.710
## Median :0.0660 Median :105.31 Median : 6.170
## Mean :0.0665 Mean :104.63 Mean : 6.115
## 3rd Qu.:0.0800 3rd Qu.:134.88 3rd Qu.: 7.580
## Max. :0.1270 Max. :218.31 Max. :11.140
# Identifica el tipo de cada variable
sapply(acero,class)
## consumo pr.tbc pr.cc pr.ca pr.galv1 pr.galv2
## "numeric" "integer" "integer" "integer" "integer" "integer"
## pr.pint linea hora temperatura averias naverias
## "integer" "character" "character" "character" "character" "integer"
## sistema ProdTotal NOx CO COV SO2
## "character" "integer" "numeric" "numeric" "numeric" "numeric"
## CO2 N2O
## "numeric" "numeric"
unique(acero$linea)
## [1] "A" "B" "C"
unique(acero$hora)
## [1] "1º" "2º" "3º" "4º" "5º" "6º" "7º" "8º"
unique(acero$temperatura)
## [1] "Alta" "Baja" "Media"
unique(acero$averias)
## [1] "Si" "No"
unique(acero$sistema)
## [1] "OFF" "ON"
Para este análisis se seleccionan las variables sistema
y averias. La variable sistema representa el
estado de funcionamiento del sistema (ON/OFF), mientras que
averias indica si se presentó una avería (Si/No). Esta
relación es de interés en un proceso agroindustrial porque permite
evaluar si la ocurrencia de averías está relacionada con el estado
operativo del sistema y puede aportar información para el mantenimiento
preventivo.
¿Existe una asociación entre el estado del sistema
(sistema) y la ocurrencia de averías
(averias)?
Analizar si existe una asociación entre el estado del sistema y la ocurrencia de averías mediante probabilidades condicionales, una tabla de contingencia y la prueba de Chi-cuadrado de independencia.
H₀: El estado del sistema y la ocurrencia de averías son independientes.
H₁: Existe una asociación entre el estado del sistema y la ocurrencia de averías.
La tabla de contingencia permite observar conjuntamente las
categorías de las variables sistema y averias,
mostrando cuántos registros corresponden a cada combinación.
# Tabla de contingencia entre sistema y averias
tabla_sistema_averias <- table(acero$sistema, acero$averias)
tabla_sistema_averias
##
## No Si
## OFF 43 16
## ON 46 12
# Totales por filas
margin.table(tabla_sistema_averias, 1)
##
## OFF ON
## 59 58
# Totales por columnas
margin.table(tabla_sistema_averias, 2)
##
## No Si
## 89 28
margin.table() nos permite obtener los totales de la
tabla:
margin.table(..., 1) → totales de cada categoría de
sistema.margin.table(..., 2) → totales de cada categoría de
averias.Para verificar el cálculo realizado manualmente, se utiliza prop.table() para obtener las probabilidades de avería según el estado del sistema
# Probabilidades condicionales por filas
prop.table(tabla_sistema_averias, 1)
##
## No Si
## OFF 0.7288136 0.2711864
## ON 0.7931034 0.2068966
A continuación se presenta el cálculo manual de las probabilidades condicionales y de la probabilidad conjunta, utilizando los datos obtenidos de la tabla de contingencia.
Para visualizar la tabla de contingencia junto con los totales de las
filas, las columnas y el total general, se utiliza la función
addmargins().
# Tabla de contingencia con totales
addmargins(tabla_sistema_averias)
##
## No Si Sum
## OFF 43 16 59
## ON 46 12 58
## Sum 89 28 117
## Probabilidades conjuntas
Las probabilidades conjuntas permiten conocer la proporción de registros que pertenecen simultáneamente a cada combinación entre el estado del sistema y la ocurrencia de averías.
# Probabilidades conjuntas
prop.table(tabla_sistema_averias)
##
## No Si
## OFF 0.3675214 0.1367521
## ON 0.3931624 0.1025641
Para evaluar si existe una asociación estadísticamente significativa entre el estado del sistema y la ocurrencia de averías, se aplica la prueba de Chi-cuadrado de independencia.
# Prueba de Chi-cuadrado con corrección de Yates
prueba_chi <- chisq.test(tabla_sistema_averias)
prueba_chi
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: tabla_sistema_averias
## X-squared = 0.35785, df = 1, p-value = 0.5497
La función:
chisq.test(tabla_sistema_averias)
Para comparar el resultado anterior, se realiza nuevamente la prueba de Chi-cuadrado sin aplicar la corrección de continuidad de Yates.
# Prueba de Chi-cuadrado sin corrección de Yates
prueba_chi_sin_yates <- chisq.test(
tabla_sistema_averias,
correct = FALSE
)
prueba_chi_sin_yates
##
## Pearson's Chi-squared test
##
## data: tabla_sistema_averias
## X-squared = 0.66405, df = 1, p-value = 0.4151
Así podemos comparar:
| Prueba | Corrección |
|---|---|
Primera chisq.test() |
Con Yates |
Segunda chisq.test(..., correct = FALSE) |
Sin Yates |
En ambas debemos observar principalmente:
Para evaluar la posible asociación entre el estado del sistema y la ocurrencia de averías se realizaron dos pruebas de Chi-cuadrado: una con corrección de Yates y otra sin esta corrección.
En ambos casos se utiliza un nivel de significancia de α = 0,05.
La prueba de Chi-cuadrado con corrección de Yates obtuvo:
Como 0,5497 > 0,05, no se rechaza la hipótesis nula de independencia.
La prueba de Chi-cuadrado sin corrección de Yates obtuvo:
Como 0,4151 > 0,05, tampoco se rechaza la hipótesis nula de independencia.
Por lo tanto, ambas pruebas conducen a la misma conclusión: con los datos analizados no existe evidencia estadística suficiente para afirmar una asociación entre el estado del sistema y la ocurrencia de averías.
# Comparación de las pruebas de Chi-cuadrado
prueba_chi
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: tabla_sistema_averias
## X-squared = 0.35785, df = 1, p-value = 0.5497
prueba_chi_sin_yates
##
## Pearson's Chi-squared test
##
## data: tabla_sistema_averias
## X-squared = 0.66405, df = 1, p-value = 0.4151
A partir de las 117 observaciones analizadas, se evaluó la posible relación entre el estado del sistema y la ocurrencia de averías mediante una tabla de contingencia y la prueba de Chi-cuadrado de independencia.
La probabilidad de presentar una avería cuando el sistema se
encuentra en estado ON fue de 20,69 %, mientras que cuando se encuentra
en estado OFF fue de 27,12 %. Aunque se observa una diferencia
descriptiva entre ambas proporciones, la prueba de Chi-cuadrado sin
corrección de Yates obtuvo un p-value de 0,4151, superior
al nivel de significancia de 0,05.
Por lo tanto, con la información disponible no existe evidencia estadística suficiente para afirmar una asociación entre el estado del sistema y la ocurrencia de averías. Desde el punto de vista de la ingeniería agrícola, estos resultados pueden servir como punto de partida para el análisis del mantenimiento del proceso, pero sería conveniente considerar otras variables del proceso productivo que puedan estar relacionadas con la aparición de averías.
Se utilizó inteligencia artificial como herramienta de apoyo para comprender las funciones estadísticas empleadas en R Markdown, organizar la estructura del documento y aclarar la interpretación de conceptos como probabilidad condicional, tablas de contingencia y prueba de Chi-cuadrado.
Los resultados numéricos fueron ejecutados y verificados directamente
en R utilizando el dataset acero.csv. La interpretación
final fue revisada de acuerdo con los resultados obtenidos en el
análisis.