#------------------ UNIVERSIDAD CENTRAL DEL ECUADOR
##-----Faculta 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 Descriptiva
# Integrantes: Jazmin Guañuna, Nayely Perugachi, Helen Taipe, Gabriela Usiña
# Fecha: 26/5/2025
# Carga de datos
datos<-read.csv("Waste_Management_and_Recycling_India.csv",
header = T, sep = ";",dec = "." )
str(datos)
## 'data.frame': 850 obs. of 13 variables:
## $ City.District : chr "Mumbai" "Mumbai" "Mumbai" "Mumbai" ...
## $ Waste.Type : chr "Plastic" "Organic" "E-Waste" "Construction" ...
## $ Waste.Generated..Tons.Day. : int 6610 1181 8162 8929 5032 7456 7118 9189 8609 6632 ...
## $ Recycling.Rate.... : int 68 56 53 56 44 73 37 57 48 71 ...
## $ Population.Density..People.km.. : int 11191 11191 11191 11191 11191 11191 11191 11191 11191 11191 ...
## $ Municipal.Efficiency.Score..1.10.: int 9 5 8 5 7 9 6 10 8 6 ...
## $ Disposal.Method : chr "Composting" "Composting" "Incineration" "Landfill" ...
## $ Cost.of.Waste.Management....Ton. : int 3056 2778 3390 1498 2221 3195 3686 1791 1681 2311 ...
## $ Awareness.Campaigns.Count : int 14 12 13 14 16 6 14 12 20 12 ...
## $ Landfill.Name : chr "Mumbai Landfill" "Mumbai Landfill" "Mumbai Landfill" "Mumbai Landfill" ...
## $ Landfill.Location..Lat..Long. : chr "22.4265, 77.4931" "22.4265, 77.4931" "22.4265, 77.4931" "22.4265, 77.4931" ...
## $ Landfill.Capacity..Tons. : int 45575 45575 45575 45575 45575 45575 45575 45575 45575 45575 ...
## $ Year : int 2019 2019 2019 2019 2019 2020 2020 2020 2020 2020 ...
# Extraer Variable Cuantitativa Continua
tasa_reciclaje<-na.omit(datos$Recycling.Rate....)
# Procedimiento Sturges
min<-min(tasa_reciclaje)
max<-max(tasa_reciclaje)
R<- max-min
k<- 1+(3.3*log10(length(tasa_reciclaje)))
k<- floor(k)
A<-R/k
li<-seq(from=min, to=max-A, by=A)
ls<-seq(from=min+A, to=max, by=A)
MC<-(li+ls)/2
ni <- c()
for (i in 1:k) {
if(i==k)
ni[i] <- length(subset(tasa_reciclaje,tasa_reciclaje>=li[i] & tasa_reciclaje<=ls[i]))
else
ni[i] <- length(subset(tasa_reciclaje,tasa_reciclaje>=li[i] & tasa_reciclaje<ls[i]))
}
n<-sum(ni)
hi<-(ni/n)*100
Ni_asc<-cumsum(ni)
Ni_dsc<-rev(cumsum(rev(ni)))
Hi_asc<-cumsum(hi)
Hi_dsc<-rev(cumsum(rev(hi)))
TDF.tasa_reciclaje<-data.frame(li,ls,MC,ni,round(hi,2),
Ni_asc,round(Hi_asc,2),
Ni_dsc,round(Hi_dsc,2))
colnames(TDF.tasa_reciclaje)<-c("Li","Ls",
"Mc","ni","hi (%)",
"Niasc","Hiasc (%)",
"Nidsc","Hidsc (%)")
TDF.tasa_reciclaje
## Li Ls Mc ni hi (%) Niasc Hiasc (%) Nidsc Hidsc (%)
## 1 30.0 35.5 32.75 89 10.47 89 10.47 850 100.00
## 2 35.5 41.0 38.25 87 10.24 176 20.71 761 89.53
## 3 41.0 46.5 43.75 85 10.00 261 30.71 674 79.29
## 4 46.5 52.0 49.25 72 8.47 333 39.18 589 69.29
## 5 52.0 57.5 54.75 105 12.35 438 51.53 517 60.82
## 6 57.5 63.0 60.25 71 8.35 509 59.88 412 48.47
## 7 63.0 68.5 65.75 90 10.59 599 70.47 341 40.12
## 8 68.5 74.0 71.25 70 8.24 669 78.71 251 29.53
## 9 74.0 79.5 76.75 101 11.88 770 90.59 181 21.29
## 10 79.5 85.0 82.25 80 9.41 850 100.00 80 9.41
# Crear Fila de Totales
totales <- c(
li= "-",
ls= "-",
MC= "-",
ni= sum(ni),
hi= sum(hi),
Ni_asc= "-",
Ni_dsc= "-",
Hi_asc= "-",
Hi_dsc= "-")
TDF_totales<- rbind(TDF.tasa_reciclaje,totales)
TDF_totales
## Li Ls Mc ni hi (%) Niasc Hiasc (%) Nidsc Hidsc (%)
## 1 30 35.5 32.75 89 10.47 89 10.47 850 100
## 2 35.5 41 38.25 87 10.24 176 20.71 761 89.53
## 3 41 46.5 43.75 85 10 261 30.71 674 79.29
## 4 46.5 52 49.25 72 8.47 333 39.18 589 69.29
## 5 52 57.5 54.75 105 12.35 438 51.53 517 60.82
## 6 57.5 63 60.25 71 8.35 509 59.88 412 48.47
## 7 63 68.5 65.75 90 10.59 599 70.47 341 40.12
## 8 68.5 74 71.25 70 8.24 669 78.71 251 29.53
## 9 74 79.5 76.75 101 11.88 770 90.59 181 21.29
## 10 79.5 85 82.25 80 9.41 850 100 80 9.41
## 11 - - - 850 100 - - - -
# Histograma Sturges
Histograma<- hist(tasa_reciclaje,
breaks=seq(min(tasa_reciclaje),max(tasa_reciclaje),A),
main = "Gráfica No. 50:
Distribución de Cantidad de la Tasa de Reciclaje
en el Estudio de Residuos de la India",
ylab = "Cantidad",
xlab = "Tasa de Reciclaje (%)",
col = "green4")

## Procedimiento con R
Histogramatasa_reciclaje <- hist(tasa_reciclaje,
main = "Gráfica No. 51:
Distribución de Cantidad de la Tasa de Reciclaje
en el Estudio de Residuos de la India",
xlab = "Tasa de Reciclaje (%)", ylab = "Cantidad", col = "red4")

# Limites
limites <- Histogramatasa_reciclaje$breaks
liminf <- limites[1:11]
limsup <- limites[2:12]
MC <- Histogramatasa_reciclaje$mids
ni <- Histogramatasa_reciclaje$counts
# Total de datos
n <- sum(ni)
# Frecuencia relativa (%)
hi <- (ni / n) * 100
Niasc <- cumsum(ni)
Nidsc <- rev(cumsum(rev(ni)))
Hiasc <- cumsum(hi)
Hidsc <- rev(cumsum(rev(hi)))
# Crear tabla
Tabla_tasa_reciclaje <- data.frame(liminf,limsup, MC,
ni, round(hi,2),
Niasc, round(Hiasc,2),
Nidsc,round(Hidsc,2))
colnames(Tabla_tasa_reciclaje)<-c("Li","Ls",
"Mc","ni","hi (%)",
"Niasc","Hiasc (%)",
"Nidsc","Hidsc (%)")
Tabla_tasa_reciclaje
## Li Ls Mc ni hi (%) Niasc Hiasc (%) Nidsc Hidsc (%)
## 1 30 35 32.5 89 10.47 89 10.47 850 100.00
## 2 35 40 37.5 87 10.24 176 20.71 761 89.53
## 3 40 45 42.5 70 8.24 246 28.94 674 79.29
## 4 45 50 47.5 72 8.47 318 37.41 604 71.06
## 5 50 55 52.5 95 11.18 413 48.59 532 62.59
## 6 55 60 57.5 69 8.12 482 56.71 437 51.41
## 7 60 65 62.5 70 8.24 552 64.94 368 43.29
## 8 65 70 67.5 78 9.18 630 74.12 298 35.06
## 9 70 75 72.5 72 8.47 702 82.59 220 25.88
## 10 75 80 77.5 79 9.29 781 91.88 148 17.41
## 11 80 85 82.5 69 8.12 850 100.00 69 8.12
# Crear Fila de Totales
totales <- c(
liminf= "-",
limsup= "-",
MC= "-",
ni= sum(ni),
hi= sum(hi),
Niasc= "-",
Nidsc= "-",
Hiasc= "-",
Hidsc= "-")
TDF.totales<- rbind(Tabla_tasa_reciclaje,totales)
TDF.totales
## Li Ls Mc ni hi (%) Niasc Hiasc (%) Nidsc Hidsc (%)
## 1 30 35 32.5 89 10.47 89 10.47 850 100
## 2 35 40 37.5 87 10.24 176 20.71 761 89.53
## 3 40 45 42.5 70 8.24 246 28.94 674 79.29
## 4 45 50 47.5 72 8.47 318 37.41 604 71.06
## 5 50 55 52.5 95 11.18 413 48.59 532 62.59
## 6 55 60 57.5 69 8.12 482 56.71 437 51.41
## 7 60 65 62.5 70 8.24 552 64.94 368 43.29
## 8 65 70 67.5 78 9.18 630 74.12 298 35.06
## 9 70 75 72.5 72 8.47 702 82.59 220 25.88
## 10 75 80 77.5 79 9.29 781 91.88 148 17.41
## 11 80 85 82.5 69 8.12 850 100 69 8.12
## 12 - - - 850 100 - - - -
# Histograma R ni Local
Histograma<- hist(tasa_reciclaje,
breaks=limites,
main = "Gráfica No. 52:
Distribución de Cantidad de la Tasa de Reciclaje
en el Estudio de Residuos de la India",
ylab = "Cantidad",
xlab = "Tasa de Reciclaje (%)",
col = "skyblue3")

# Histograma R ni Global
Histograma<- hist(tasa_reciclaje,
breaks=limites,
main = "Gráfica No. 53:
Distribución de Cantidad de la Tasa de Reciclaje
en el Estudio de Residuos de la India",
ylab = "Cantidad",
xlab = "Tasa de Reciclaje (%)",
col = "red3", ylim = c(0,length(tasa_reciclaje)))

# Histograma R hi Local
barplot(hi,space = 0, ylab = "Porcentaje (%)", xlab = "Tasa de Reciclaje (%)",
names.arg = Tabla_tasa_reciclaje$Mc,
main = "Gráfica No. 54:
Distribución de Porcentaje de la Tasa de Reciclaje
en el Estudio de Residuos de la India",
col = "skyblue3")

# Histograma R hi Global
barplot(hi,space = 0, ylab = "Porcentaje (%)",xlab = "Tasa de Reciclaje (%)",
names.arg = Tabla_tasa_reciclaje$Mc,
main = "Gráfica No. 55:
Distribución de Porcentaje de la Tasa de Reciclaje
en el Estudio de Residuos en la India",
ylim=c(0,100),
col = "red3")

# DIAGRAMA DE CAJA
boxplot(tasa_reciclaje, horizontal=T, col="salmon",
main="Gráfica No. 56:
Diagrama de Caja de la Cantidad de Tasa de Reciclaje
en el Estudio de Residuos de la India",
xlab= "Tasa de Reciclaje (%)")

# OJIVAS Ni
plot(limsup,Niasc,col="blue",
main="Gráfica No. 57:
Ojiva Ascendente y Descendente de la Cantidad de Tasa de Reciclaje
en el Estudio de Residuos de la India",
ylab = "Cantidad", xlab="Tasa de Reciclaje (%)", type="o", pch=16, xlim = c(30,85))
lines(liminf,Nidsc,col="red",type="o", pch=16)

# OJIVAS Hi
plot(limsup,Hiasc,col="blue",
main="Gráfica No. 58:
Ojiva Ascendente y Descendente del Porcentaje de Tasa de Reciclaje
en el Estudio de Residuos de la India",
ylab = "Porcentaje (%)", xlab="Tasa de Reciclaje (%)", type="o", pch=16,
ylim = c(0,100),xlim = c(30,85))
lines(liminf,Hidsc,col="red",type="o", pch=16)

# Indicadores Estadísticos
# Tendencia Central
# Media Aritmética
X<-mean(tasa_reciclaje)
X
## [1] 57.07647
# Mediana
Me<-median(tasa_reciclaje)
Me
## [1] 56
# Moda
Mo<-"[30,40],[50,55]"
# Dispersión
# Varianza
var(tasa_reciclaje)
## [1] 260.1767
# Desviación Estandar
sd<-sd(tasa_reciclaje)
sd
## [1] 16.12999
CV<-(sd/X)*100
CV
## [1] 28.26032
# Formas
# Asimetria
library(e1071)
As<- skewness(tasa_reciclaje)
As
## [1] 0.02623265
# Curtosis
K<-kurtosis(tasa_reciclaje)
K
## [1] -1.203364
# Tabla de Indicadores
Variable <- "Tasa de Reciclaje"
Rango <- "[30,85]"
Tabla_indicadores <- data.frame(Variable,Rango,round(X,3),Me,Mo,round(sd,2),round(CV,2),round(As,2),round(K,2))
colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","sd","CV","As","K")
Tabla_indicadores
## Variable Rango X Me Mo sd CV As K
## 1 Tasa de Reciclaje [30,85] 57.076 56 [30,40],[50,55] 16.13 28.26 0.03 -1.2