1.Carga de datos
setwd("/cloud/project/")
datos<-read.csv("DerramesEEUU.csv", header = TRUE, sep=";" , dec=",")
str(datos)
## 'data.frame': 2760 obs. of 59 variables:
## $ NumeroInforme : int 20100064 20100054 20100092 20100098 20100101 20100102 20100113 20100120 20100039 20100150 ...
## $ NumeroComplementario : int 15072 15114 15120 15127 15130 15132 15146 15162 15197 15205 ...
## $ DiaAccidente : int 8 25 10 28 27 29 11 23 15 11 ...
## $ MesAccidente : int 4 3 5 4 5 5 6 5 3 1 ...
## $ AnioAccidente : int 2010 2010 2010 2010 2010 2010 2010 2010 2010 2010 ...
## $ HoraAccidente : int 6 13 6 24 3 14 7 6 15 2 ...
## $ AmPmAccidente : chr "a. m." "p. m." "a. m." "p. m." ...
## $ IDOperador : int 31684 18779 30829 12105 20160 30003 1248 300 18718 32296 ...
## $ NombreOperador : chr "CONOCOPHILLIPS" "SUNOCO, INC (R&M)" "TEPPCO CRUDE PIPELINE, LLC" "MAGELLAN AMMONIA PIPELINE, L.P." ...
## $ NombreOleoductoInstalacion : chr "GD-03, GOLD LINE" "PHILADELPHIA REFINERY - WEST YARD" "HOBBS TO MIDLAND" "WHITING TO EARLY SEGMENT" ...
## $ UbicacionOleoducto : chr "ONSHORE" "ONSHORE" "ONSHORE" "ONSHORE" ...
## $ TipoOleoducto : chr "ABOVEGROUND" "ABOVEGROUND" "UNDERGROUND" "UNDERGROUND" ...
## $ TipoLiquido : chr "REFINED AND/OR PETROLEUM PRODUCT (NON-HVL), LIQUID" "REFINED AND/OR PETROLEUM PRODUCT (NON-HVL), LIQUID" "CRUDE OIL" "HVL OR OTHER FLAMMABLE OR TOXIC FLUID, GAS" ...
## $ SubtipoLiquido : chr "GASOLINE (NON-ETHANOL)" "OTHER" "-" "ANHYDROUS AMMONIA" ...
## $ NombreLiquido : chr "-" "VACUUM GAS OIL (VGO)" "-" "-" ...
## $ CiudadAccidente : chr "GREEN RIDGE" "PHILADELPHIA" "HOBBS" "SCHALLER" ...
## $ CondadoAccidente : chr "PETTIS" "PHILADELPHIA" "LEA" "IDA" ...
## $ EstadoAccidente : chr "MO" "PA" "NM" "IA" ...
## $ LatitudAccidente : num 38.6 39.9 32.6 42.5 30.2 ...
## $ LongitudAccidente : num -93.4 -75.2 -103.1 -95.3 -91.2 ...
## $ CategoriaCausa : chr "NATURAL FORCE DAMAGE" "MATERIAL/WELD/EQUIP FAILURE" "CORROSION" "MATERIAL/WELD/EQUIP FAILURE" ...
## $ SubcategoriaCausa : chr "TEMPERATURE" "NON-THREADED CONNECTION FAILURE" "EXTERNAL" "CONSTRUCTION, INSTALLATION OR FABRICATION-RELATED" ...
## $ LiberacionInvoluntariaBarriles : num 0.24 1700 2 0.36 1.31 ...
## $ LiberacionIntencionalBarriles : chr "0" "0" "-" "0.05" ...
## $ RecuperacionLiquidoBarriles : num 0.07 1699 0.48 0 0 ...
## $ PerdidaNetaBarriles : num 0.17 1 1.52 0.36 1.31 ...
## $ IgnicionLiquido : chr "NO" "NO" "NO" "NO" ...
## $ ExplosionLiquido : chr "NO" "NO" "NO" "NO" ...
## $ CierreOleoducto : chr "YES" "YES" "NO" "NO" ...
## $ DiaCierre : chr "8" "25" "-" "-" ...
## $ MesCierre : chr "4" "3" "-" "-" ...
## $ AnioCierre : chr "2010" "2010" "-" "-" ...
## $ HoraCierre : chr "6" "18" "-" "-" ...
## $ AmPmCierre : chr "a. m." "p. m." "-" "-" ...
## $ DiaReinicio : chr "9" "28" "-" "-" ...
## $ MesReinicio : chr "4" "3" "-" "-" ...
## $ AnioReinicio : chr "2010" "2010" "-" "-" ...
## $ HoraReinicio : chr "10" "16" "-" "-" ...
## $ AmPmReinicio : chr "a. m." "p. m." "-" "-" ...
## $ EvacuacionesPublicas : chr "-" "0" "-" "-" ...
## $ LesionesEmpleadosOperador : chr "-" "-" "-" "-" ...
## $ LesionesContratistasOperador : chr "-" "-" "-" "-" ...
## $ LesionesRescatistasEmergencia : chr "-" "-" "-" "-" ...
## $ OtrasLesiones : chr "-" "-" "-" "-" ...
## $ LesionesPublico : chr "-" "-" "-" "-" ...
## $ TodasLesiones : chr "-" "-" "-" "-" ...
## $ FallecimientosEmpleadosOperador : chr "-" "-" "-" "-" ...
## $ FallecimientosContratistasOperador : chr "-" "-" "-" "-" ...
## $ FallecimientosRescatistasEmergencia : chr "-" "-" "-" "-" ...
## $ OtrosFallecimientos : chr "-" "-" "-" "-" ...
## $ FallecimientosPublico : chr "-" "-" "-" "-" ...
## $ TodosFallecimientos : chr "-" "-" "-" "-" ...
## $ CostosDaniosPropiedad : chr "0" "0" "30000" "12000" ...
## $ CostosMercanciaPerdidas : chr "27" "0" "100" "30" ...
## $ CostosDaniosPropiedadesPublicasPrivadas: chr "0" "0" "1000" "5000" ...
## $ CostosRespuestaEmergencia : chr "0" "0" "-" "0" ...
## $ CostosRemediacionAmbiental : chr "0" "100000" "20000" "15000" ...
## $ OtrosCostos : chr "0" "0" "-" "0" ...
## $ TodosCostos : int 27 100000 51100 32030 5220 150 7500 9965 11497 165593 ...
3. Conjetura del Modelo
Se considera que la variable AñoAccidente,
podría seguir una distribución uniforme discreta. Bajo el modelo
uniforme se asume que todos los años tienen la misma probabilidad de
accidentes.
3.1 Definición de Hipótesis
- Hipótesis nula (Ho): Los accidentes
siguen una distribución uniforme.
- Hipótesis alternativa (H1): Los
accidentes no siguen una distribución uniforme.
3.2 Calculo de Frecuencias
3.2.1 Frecuencias Observadas
Fo <- TablaAnioAccidente$ni
3.2.3 Tabla Final
tabla_mouniforme <- data.frame(
Año = TablaAnioAccidente$Anio,
Observado = as.numeric(Fo),
Esperado = Fe
)
library(gt)
tabla_Mo <- tabla_mouniforme %>%
gt() %>%
cols_label(
Año = md("**Año**"),
Observado = md("**Frecuencia Observada**"),
Esperado = md("**Frecuencia Esperada**")
) %>%
tab_header(
title = md("**Tabla N° 1**"),
subtitle = md("**Distribución de Frecuencias Observadas y Esperadas
de todos los años de los accidentes en oleoductos EE.UU (2010-2017)**")
) %>%
tab_source_note(
source_note = md("Autor: Grupo 1")
) %>%
tab_options(
table.background.color = "white",
row.striping.background_color = "white",
table.border.top.color = "black",
table.border.bottom.color = "black",
table.border.top.style = "solid",
table.border.bottom.style = "solid",
column_labels.font.weight = "bold",
column_labels.border.top.color = "black",
column_labels.border.bottom.color = "black",
column_labels.border.bottom.width = px(2),
heading.border.bottom.color = "black",
heading.border.bottom.width = px(2),
table_body.hlines.color = "gray",
table_body.border.bottom.color = "black"
)
tabla_Mo
Tabla N° 1 |
Distribución de Frecuencias Observadas y Esperadas
de todos los años de los accidentes en oleoductos EE.UU (2010-2017) |
Año |
Frecuencia Observada |
Frecuencia Esperada |
2010 |
346 |
345 |
2011 |
336 |
345 |
2012 |
362 |
345 |
2013 |
400 |
345 |
2014 |
447 |
345 |
2015 |
453 |
345 |
2016 |
414 |
345 |
2017 |
2 |
345 |
Autor: Grupo 1 |
3.2.4 Gráfico de Comparación
par(mar = c(6, 6, 6, 2), xpd = TRUE)
barplot(rbind(Fo, Fe),
beside = TRUE,
col = c("tan1", "darkgreen"),
names.arg = names(Fo),
xlab = "Año de accidente",
ylab = "Frecuencia",
las = 1,
cex.names = 0.8,
cex.axis = 1)
title(main = "Gráfica No.1: Comparación realidad y modelo uniforme de
los años de accidentes",
cex.main = 1.2,
line = 2.4)
legend( x = 19, y = 500,
legend = c("Modelo Observado", "Modelo Uniforme"),
fill = c("tan1", "darkgreen"),
bty = "o",
y.intersp = 0.7,
inset = 0.2,
cex = 0.7)

3.3 Test
3.3.1 Test de Pearson (Correlación de frecuencias)
Fo_num <- as.numeric(Fo)
Fe_num <- as.numeric(Fe)
cor_uniforme <- cor(Fo_num, Fe_num)
## Warning in cor(Fo_num, Fe_num): the standard deviation is zero
Gráfico de correlación
plot(Fo_num, Fe_num,
main = "Gráfico No.2: Correlación Observadas vs Esperadas
(Uniforme)",
xlab = "Frecuencias Observadas",
ylab = "Frecuencias Esperadas",
pch = 19, col = "darkgreen")
abline(lm(Fe ~ Fo), col = "red", lwd = 2)

3.3.2 Test de Bondad de ajuste
Chi-cuadrado
x2 <- sum((Fo - Fe)^2 / Fe)
Estadístico Chi-cuadrado (X2): 428.6203
Nivel de significancia y grados de libertad
nivel_significancia <- 0.05
grados_libertad <- k - 1
Valor crítico
Vc <- qchisq(1 - nivel_significancia, grados_libertad)
Valor crítico: 14.06714
4. Decisión del Modelo
if (x2 < Vc) {
cat("Conclusión: No se rechaza H0, los accidentes podrían seguir una distribución uniforme.")
} else {
cat("Conclusión: Se rechaza H0, los accidentes NO siguen una distribución uniforme.")
}
## Conclusión: Se rechaza H0, los accidentes NO siguen una distribución uniforme.