#------------------ UNIVERSIDAD CENTRAL DEL ECUADOR
##-----Facultad de Ingeniería en Geología, Minas, Petróleo y Ambiental 
###-----------------Carrera de Ingeniería Ambiental

# Proyecto: Estudio de Residuos y Reciclaje en la India
# Etapa: Estadistica Multivariable
# Integrantes: Jazmin Guañuna, Nayely Perugachi, Helen Taipe, Gabriela Usiña
# Fecha: 20/07/2025

#Regresión Lineal#

# Cargamos nuestras librerías
library(readr)
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
# Cargamos el dataset
Waste_Management_and_Recycling_India_csv_xd <- read_delim("Waste_Management_and_Recycling_India.csv xd.csv", 
                                                          delim = ";", escape_double = FALSE, trim_ws = TRUE)
## Rows: 850 Columns: 13
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ";"
## chr (5): City/District, Waste Type, Disposal Method, Landfill Name, Landfill...
## dbl (8): Waste Generated (Tons/Day), Recycling Rate (%), Population Density ...
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
datos <- Waste_Management_and_Recycling_India_csv_xd
# Extraer las variables
residuos_generados <- datos$`Waste Generated (Tons/Day)`
densidad_poblacional<- datos$`Population Density (People/km²)`

# Definir las variables
x <- residuos_generados
y <- densidad_poblacional

# Diagrama de dispersión
plot(x, y,
     main = "Gráfica No1: Diagrama de dispersión entre la tasa de reciclaje  y los residuos generados",
     xlab = "Residuos generados (ton/día)",
     ylab = "Densidad poblacional (habitante/km²)")

# Filtrar y agrupar datos
DatosF <- datos %>%
  filter(`Waste Generated (Tons/Day)`> 6000,
         `Waste Generated (Tons/Day)`< 7000,
         `Population Density (People/km²)`> 13000,     
         `Population Density (People/km²)`< 18000) %>%
  transmute(
    x = `Waste Generated (Tons/Day)`,
    y = `Population Density (People/km²)`
  ) %>%
  mutate(x_group = round(x / 10) * 10) %>%
  group_by(x_group) %>%
  slice_min(y, n = 1) %>%
  ungroup() %>%
  select(x = x_group, y)

# Actualizar x e y
x <- DatosF$x
y <- DatosF$y

# Nueva gráfica con regresión
plot(x, y,
     main = "Gráfica No2: Modelo de regresión potencial",
     xlab = "Residuos generados (ton/día)",
     ylab = "Costo de gestión (rupia/Ton)")
regresionlineal<-lm(y~x)
regresionlineal
## 
## Call:
## lm(formula = y ~ x)
## 
## Coefficients:
## (Intercept)            x  
##   49245.868       -5.146
# y=49245.868-5.146x
plot(x, y,
     main = "Gráfica No2: Modelo de regresión potencial",
     xlab = "Residuos generados (ton/día)",
     ylab = "Costo de gestión (rupia/Ton)")
abline(regresionlineal,col="red")

#TEST
r<-cor(x,y)
r
## [1] -0.802785
#Coeficiente de determinación
r2<-(r^2)*100
r2
## [1] 64.44637
#Restricciones
# y=49245.868-5.146x
# 0=49245.868-5.146x
intercepto <- 49245.868
pendiente   <- -5.146
x0 <- intercepto / abs(pendiente)
x0
## [1] 9569.737
#Predicción
"¿Cuál es la densidad poblacional esperada en áreas
donde se generan 6500 toneladas de residuos al día?"
## [1] "¿Cuál es la densidad poblacional esperada en áreas\ndonde se generan 6500 toneladas de residuos al día?"
# y=49245.868-5.146x
# y=49245.868-5.146(6500)

intercepto <- 49245.868
pendiente   <- -5.146
x6500 <- 6500

# Cálculo de la tasa de reciclaje estimada
tasa6500<- intercepto + pendiente * x6500
tasa6500
## [1] 15796.87
#Conclusión
# Entre la densidad poblacional y los residuos generados del Estudio
# de residuos de la India dentro de los intervalos 6000 y 7000 toneladas por día
# para residuos generados ,13000 y 18000 habitantes por kilometro cuadrado para
# densidad polacional existe una relacion de tipo lineal representado por
# y=49245.868-5.146x siendo x los residuos generados en (ton/dia) & y la densidad
#poblacional.
# La densidad poblacional esperada en áreas donde se generan 6500
# toneladas de residuos al día es 15796.87 habitantes por kilometro cuadrado
# Ademas la densidad poblacional esta influenciada en un 64.44 % por los residuos generados
#mientras que el 35.56 % se debe a otros factores.