#------------------ 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


# ======================= MODELO LOGARÍTMICO ==========================
library(rio)

datos <- import("Waste_Management_and_Recycling_India.csv xd.csv")

names(datos) <- 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"
)

# 1. LIMPIEZA DE DATOS
x <- datos$Densidad_Poblacional
y <- datos$Capacidad_Relleno_Ton

tabla <- data.frame(x, y)
tabla_limpia <- tabla[!apply(tabla, 1, function(fila) {
  any(is.na(fila) | fila == 0 | fila == "" | fila == "-Inf")
}), ]

# 2. AJUSTE DE MODELO LOGARÍTMICO
x_log <- log(tabla_limpia$x)
modelo <- lm(tabla_limpia$y ~ x_log)
summary(modelo)
## 
## Call:
## lm(formula = tabla_limpia$y ~ x_log)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -32441 -13495  -2814  11402  42973 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 130613.9     9347.8  13.973  < 2e-16 ***
## x_log        -7674.1      998.4  -7.686 4.19e-14 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 18780 on 848 degrees of freedom
## Multiple R-squared:  0.06513,    Adjusted R-squared:  0.06403 
## F-statistic: 59.08 on 1 and 848 DF,  p-value: 4.187e-14
a <- coef(modelo)[1]
b <- coef(modelo)[2]

# 3. GRAFICAR AJUSTE
plot(tabla_limpia$x, tabla_limpia$y,
     col = 4, pch = 16,
     main = "Gráfica No.9 :Regresión Logarítmica: Densidad vs Capacidad",
     xlab = "Densidad Poblacional",
     ylab = "Capacidad del Vertedero (Ton)")

curve(a + b * log(x), from = min(tabla_limpia$x),
      to = max(tabla_limpia$x), col = "red", lwd = 2, add = TRUE)

# 4. CÁLCULO DE PROBABILIDAD
densidad_dada <- 5000
capacidad_esperada <- a + b * log(densidad_dada)
cat("Capacidad esperada para densidad 5000:", round(capacidad_esperada, 2), "\n")
## Capacidad esperada para densidad 5000: 65252.52
# 5. INTERVALOS DE CONFIANZA PARA LOS PARÁMETROS
confint(modelo, level = 0.95)
##                  2.5 %     97.5 %
## (Intercept) 112266.398 148961.455
## x_log        -9633.689  -5714.421
# 6. INTERVALO DE PREDICCIÓN PARA UN NUEVO VALOR
nuevo <- data.frame(x_log = log(densidad_dada))
ic_pred <- predict(modelo, newdata = nuevo, interval = "prediction", level = 0.95)
cat("IC del 95% para la predicción con densidad 5000:", round(ic_pred[1],2), "a", round(ic_pred[3],2), "\n")
## IC del 95% para la predicción con densidad 5000: 65252.52 a 102173.8
### Conclusión ###

# Se ajustó un modelo logarítmico entre la densidad poblacional y la capacidad del relleno sanitario, obteniendo la forma:

# Capacidad ≈ 115545.91 - 5911.34 * ln(Densidad)

# Aunque el modelo no fue estadísticamente significativo (p ≈ 0.31), se estimó que una ciudad con densidad de 5000 hab/km²
# tendría una capacidad promedio de aproximadamente 69,590 toneladas.

# El intervalo de predicción al 95% se ubica entre 28,331 y 102,174 toneladas, lo que indica alta variabilidad en las observaciones.