#------------------ UNIVERSIDAD CENTRAL DEL ECUADOR
##-----Facultad de Ingeniería en Geología, Minas, Petróleos y Ambiental
###-----------------Carrera de Ingeniería Ambiental
# Proyecto: Estudio de Residuos y Reciclaje en la India
# Etapa: Estadistica Multivariable
# Nombre: Helen Taipe
# Fecha: 20/07/2025
# --- Distribución Beta Bivariada: Tasa de Reciclaje vs Eficiencia Municipal ---
library(rio)
bd <- import("Waste_Management_and_Recycling_India.csv xd.csv")
names(bd) <- c(
"Ciudad",
"Tipo_Residuo",
"Residuos_Generados_TonDia",
"Tasa_Reciclaje_Porc",
"Densidad_Poblacional",
"Eficiencia_Municipal",
"Metodo_Disposicion",
"Costo_Gestion_Residuos",
"Campanas_Concientizacion",
"Nombre_Relleno",
"Ubicacion_Relleno",
"Capacidad_Relleno_Ton",
"Anio"
)
library(naniar)
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
library(tidyr)
bd <- bd %>%
separate(Ubicacion_Relleno, into = c("Latitud", "Longitud"), sep = ",", remove = FALSE) %>%
mutate(Latitud = as.numeric(trimws(Latitud)),
Longitud = as.numeric(trimws(Longitud)))
# --- Paquetes para distribución beta bivariada aproximada ---
install.packages("copula")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library(ggplot2)
library(copula)
# 1. Transformar a proporciones [0,1]
df <- bd %>%
mutate(
x = Tasa_Reciclaje_Porc / 100,
y = Eficiencia_Municipal / 10
) %>%
filter(x > 0 & x < 1 & y > 0 & y < 1)
# 2. Estimar parámetros beta por momentos
mean_x <- mean(df$x); var_x <- var(df$x)
alpha_x <- mean_x * ((mean_x * (1 - mean_x)) / var_x - 1)
beta_x <- (1 - mean_x) * ((mean_x * (1 - mean_x)) / var_x - 1)
mean_y <- mean(df$y); var_y <- var(df$y)
alpha_y <- mean_y * ((mean_y * (1 - mean_y)) / var_y - 1)
beta_y <- (1 - mean_y) * ((mean_y * (1 - mean_y)) / var_y - 1)
# 3. Estimar correlación
rho <- cor(df$x, df$y)
cat("Parámetros estimados:\n")
## Parámetros estimados:
cat("Alpha_x =", round(alpha_x, 3), "| Beta_x =", round(beta_x, 3), "\n")
## Alpha_x = 4.854 | Beta_x = 3.649
cat("Alpha_y =", round(alpha_y, 3), "| Beta_y =", round(beta_y, 3), "\n")
## Alpha_y = 6.358 | Beta_y = 2.799
cat("Correlación (rho) =", round(rho, 3), "\n")
## Correlación (rho) = -0.044
# 4. Simulación usando copula gaussiana + marg beta
n <- nrow(df)
cop <- normalCopula(param = rho, dim = 2)
u <- rCopula(n, copula = cop)
x_sim <- qbeta(u[, 1], shape1 = alpha_x, shape2 = beta_x)
y_sim <- qbeta(u[, 2], shape1 = alpha_y, shape2 = beta_y)
# 5. Visualización
df_sim <- data.frame(x = x_sim, y = y_sim)
ggplot() +
geom_point(data = df, aes(x = x, y = y), color = "blue", alpha = 0.6, size = 2) +
geom_point(data = df_sim, aes(x = x, y = y), color = "red", alpha = 0.5, shape = 4) +
labs(
title = "Datos reales (azul) vs Simulados Beta Bivariada (rojo)",
x = "Tasa de Reciclaje (proporción)",
y = "Eficiencia Municipal (proporción)"
) +
theme_minimal()

# 6. Correlación comparativa
cor_sim <- cor(x_sim, y_sim)
cat("Correlación simulada:", round(cor_sim, 3), "\n")
## Correlación simulada: -0.048
### Conclusiones ###
# Se modeló la relación conjunta entre Tasa_Reciclaje_Porc y Eficiencia_Municipal
# mediante una distribución Beta Bivariada, previa transformación de ambas variables
# al intervalo (0,1). Los parámetros estimados por momentos fueron:
# - Tasa de reciclaje: α ≈ 4.854, β ≈ 3.649
# - Eficiencia municipal: α ≈ 6.358, β ≈ 2.799
# Se utilizó una cópula gaussiana con parámetro de correlación ρ ≈ -0.044
# para capturar la dependencia entre las variables.
# La correlación observada en los datos fue r ≈ -0.044, mientras que la
# correlación de los datos simulados bajo el modelo fue r ≈ -0.112, lo cual indica
# que la dependencia entre las variables es débil y ligeramente negativa.
# Visualmente, los datos simulados y reales presentan patrones similares
# aunque dispersos, lo cual sugiere que el modelo Beta Bivariado es útil
# para representar distribuciones de proporciones conjuntas en contextos ambientales.