0.-Carga de librerías


library(gt)
library(e1071)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union

1.-Carga de datos


setwd("/cloud/project/")
datos <- read.csv("DerramesEEUU.csv", header = TRUE, sep=";" , dec=",",na.strings ="-")

2.-Selección de la variable aleatoria

CostosRA <- na.omit(datos$CostosRemediacionAmbiental)

4.-Gráfica de distribución de frecuencia


options(scipen = 999)
Histograma <- hist(CostosRA_filtrado,freq = TRUE,
     main = "Gráfica N°2:Distribución  de costos de Remediación Ambiental",
     xlab = "Costos de Remediación Ambiental ($)",
     ylab = "Cantidad",
     col = "#DEC895",
     las=1)

5.-Conjetura


Se considera que la variable Costos de Remediación Ambiental, podría seguir una distribución exponencial. Bajo este modelo se asume que los eventos ocurren de manera continua e independiente en el tiempo, con una tasa constante de ocurrencia que describe la rapidez con la que aparecen estos costos

6.-Parámetros

lambda <- 1 / mean(CostosRA_filtrado)

Estimación de lambda (tasa): 0.0001147621

7.-Sobreposición de la realidad con el modelo

par(mar = c(5, 6, 4, 2))
# Histograma
Histo_RA <- hist(CostosRA_filtrado, freq = FALSE,
                 main = "Gráfica N°3:  Comparación de la realidad con el modelo exponencial de  
                 los Costos de Remediación Ambiental en los accidentes de oleoductos en EE.UU.",
                 xlab = "Costos de Remediación Ambiental ($)", 
                 ylab = "",
                 col = "#DEC895", 
                 las = 1,
                 cex.axis = 0.8, 
                 cex.lab = 0.9, 
                 border = "black")
mtext("Densidad de probabilidad", side = 2, line = 4,cex.axis = 0.7)  

# Curva teórica
x_exp <- seq(min(CostosRA_filtrado), max(CostosRA_filtrado), length.out = 1000)
lines(x_exp, dexp(x_exp, rate = lambda), col = "#B81840", lwd = 2)

# Leyenda
legend("topright", legend = "Modelo Exponencial",
       col = "#B81840", lwd = 2, lty = 1, 
       box.lty = 1,box.col = "black",
       cex = 0.8)

8.-Test de bondad


8.1 Test de Pearson

# Correlación de frecuencias
Fo_exp <- (Histo_RA$counts) 
h2 <- length(Fo_exp)

P_exp <- c()
for (i in 1:h2) {
  P_exp[i] <- pexp(Histo_RA$breaks[i+1], rate = lambda) - pexp(Histo_RA$breaks[i], rate = lambda)
}
Fe_exp <- P_exp * length(CostosRA_filtrado)

correlacion_exp <- cor(Fo_exp, Fe_exp) * 100

La correlación de frecuencias es de = 94.91 %

# Gráfica de correlación
plot(Fo_exp, Fe_exp,
     main = "Gráfica N°4: Correlación de frecuencias en el modelo exponencial",
     xlab = "Frecuencia Observada ", ylab = "Frecuencia Esperada",
     col = "#DEC895", pch = 19)
abline(lm(Fe_exp ~ Fo_exp), col = "red", lwd = 2)

8.2-Test de chi-cuadrado

Fo_exp_pct <- (Fo_exp / n) * 100
Fe_exp_pct <- P_exp * 100

# Calcular estadístico Chi-cuadrado
x2_exp <- sum((Fe_exp_pct - Fo_exp_pct)^2 / Fe_exp_pct)

# Grados de libertad 
gl_exp <- (h2 - 1) - 1

# Nivel de significancia y valor crítico al 95% de confianza
nivel_significancia <- 0.05
umbral_aceptacion <- qchisq(1 - nivel_significancia, df = gl_exp)

cat("El estadístico Chi-cuadrado calculado =", round(x2_exp, 4), "\n\n")
## El estadístico Chi-cuadrado calculado = 10.7898
cat("Grados de libertad =", gl_exp, "\n\n")
## Grados de libertad = 6
cat("El umbral de aceptación =", round(umbral_aceptacion, 4), "\n\n")
## El umbral de aceptación = 12.5916
if (x2_exp < umbral_aceptacion) {
  cat(
    "ESTADO: APRUEBA. ",
    "Conclusión: No se rechaza H0, los costos de remediacion ambiental podrían seguir una distribución exponencial."
  )
} else {
  cat(
    "ESTADO: NO APRUEBA. ",
    "Conclusión: Se rechaza H0, los costos de remediacion ambiental NO siguen una distribución exponencial."
  )
}
## ESTADO: APRUEBA.  Conclusión: No se rechaza H0, los costos de remediacion ambiental podrían seguir una distribución exponencial.

9.-Cálculo de probabilidades


  • ¿Cuál es la probabilidad de que los Costos de Remediación Ambiental se encuentren entre 5,000 y 10,000 dolares?
prob_exp <- pexp(10000, rate = lambda) - pexp(5000, rate = lambda)

La probabilidad de que los Costos de Remediación estén entre 5000 y 10000 dolares es del: 24.6 %

Gráfica de Probabilidad

#Curva de densidad
x_exp_plot <- seq(min(CostosRA_filtrado), max(CostosRA_filtrado), length.out = 1000)
y_exp_plot <- dexp(x_exp_plot, rate = lambda)

#Grafica
par(mar = c(5, 6, 4, 2))
plot(x_exp_plot, y_exp_plot, type = "l", 
     col = "blue", lwd = 2,
     las=1, 
     cex.axis= 0.8,
     cex.lab = 0.9,
     main = "Gráfica N°5: Cálculo de probabilidad de los 
     Costos de Remediación Ambiental",
     xlab = "Costos de Remediación Ambiental ($)", 
     ylab = "")
mtext("Densidad de probabilidad", side = 2, line = 4,cex.axis = 0.8)  

# Área sombreada entre 10,000 y 5,000
x_somb_exp <- seq(5000, 10000, length.out = 1000)
y_somb_exp <- dexp(x_somb_exp, rate = lambda)
polygon(c(x_somb_exp, rev(x_somb_exp)),
        c(y_somb_exp, rep(0, length(y_somb_exp))),
        col = rgb(1, 0, 0, 0.4), border = NA)

legend("topright", legend = c("Modelo Exponencial", "Área de Probabilidad"), 
       col = c("blue", "#B81840"), lwd = 2, pch = c(NA, 15))

10.-Intervalo de confianza


# 1. Media aritmética muestral 
x <- mean(CostosRA_filtrado)

# 2. Desviación estándar muestral
sigma_costosRA <- sd(CostosRA_filtrado)

# 3. Error estándar de la media (con Z = 1.96 para el 95% de confianza)
n <- length(CostosRA_filtrado)
e <- 1.96 * (sigma_costosRA / sqrt(n))

# 4. Límites del intervalo de confianza del 95%
limite_inferior <- round(x - e, 2)
limite_superior <- round(x + e, 2)

# 5. Creación de la tabla con el formato requerido
tabla_media_exp <- data.frame(
  Intervalo = paste0(
    "P [",
    limite_inferior,
    " < µ < ",
    limite_superior,
    "] = 95%"
  )
)

# 6. Presentación de la tabla con la librería gt
library(gt)
tabla_media_exp %>%
  gt() %>%
  tab_header(
    title = md("**Tabla N°2**"),
    subtitle = md("**Intervalo de confianza del 95% para la variable **Costos de Remediación Ambiental** de los accidentes en oleoductos en EE.UU.**")
  ) %>%
  tab_source_note(
    source_note = md("Autor: Grupo 1")
  ) %>%
  cols_align(
    align = "center",    
    columns = everything()  
  ) %>%
  tab_options(
    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 = "grey",
    table_body.border.bottom.color = "black",
    table.border.left.color = "black",
    table.border.left.style = "solid",
    table.border.left.width = px(1),
    table.border.right.color = "black",
    table.border.right.style = "solid",
    table.border.right.width = px(1)
  )
Tabla N°2
Intervalo de confianza del 95% para la variable Costos de Remediación Ambiental de los accidentes en oleoductos en EE.UU.
Intervalo
P [8160.1 < µ < 9267.26] = 95%
Autor: Grupo 1

11.-Conclusión


El comportamiento de la variable Costos de Remediación Ambiental se explica con un modelo exponencial de parámetro λ = 0.0001147621. Podemos afirmar con un 95% de confianza que la media aritmética real de Costos de Remediación Ambiental se encuentra entre [8160.1 < µ < 9267.26] y una desviación estándar de 9.24.