#------------------ 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 Descriptiva
# Integrantes: Jazmin Guañuna, Nayely Perugachi, Helen Taipe, Gabriela Usiña
# Fecha: 26/5/2025

#VARIABLE CUANTITATIVA CONTINUA:LATITUD 

#Extraemos los datos
library(readr)
Latitud_INDIA1 <- read_delim("Latitud INDIA1.csv", 
                             delim = ";", escape_double = FALSE, trim_ws = TRUE)
## Rows: 850 Columns: 3
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ";"
## chr (1): NOMBRE
## dbl (1): LONGITUD
## num (1): LATITUD
## 
## ℹ 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<-Latitud_INDIA1
#Extraemos la variable continua
latitud<-datos$LATITUD

#PROCEDIMIENTO STURGES
min <- min(latitud)
max <- max(latitud)
R <- max - min
k <- 1+3.3*log10(length(latitud))
k<-floor(k)
A <- R/k 
liminf <- seq(from=min, to=max-A, by=A)
limsup <- seq(from=min+A, to=max, by=A)
MC_sturges<-(limsup+liminf)/2
I1 <- subset(latitud, latitud>=liminf[1] & latitud<limsup[1])
length(I1)
## [1] 50
n <- c()

for (i in 1:k) {
  if (i==10)
    n[i] <- length(subset(latitud, latitud>=liminf[i] & latitud<=limsup[i]))
  else
    n[i] <- length(subset(latitud, latitud>=liminf[i] & latitud<limsup[i]))
}
ni<-n
sum(ni)
## [1] 850
hi<-(ni/sum(ni))*100
sum(hi)
## [1] 100
Ni_asc<-cumsum(ni)
Hi_asc<-cumsum(hi)
Ni_dsc<-rev(cumsum(rev(ni)))
Hi_dsc<-rev(cumsum(rev(hi)))

TDF_latitudstur<-data.frame(liminf,limsup,round(MC_sturges,2),ni,round(hi,2),Ni_asc,round(Hi_asc,2),Ni_dsc,round(Hi_dsc,2))
names(TDF_latitudstur) <- c("liminf","limsup","MC","ni","hi (%)","Ni_asc","Hi_asc(%)","Ni_dsc","Hi_dsc(%)")


# Crear Fila de Totales
totales <- c(
  li= "-",
  ls= "-",
  MC= "-",
  ni= sum(ni),
  hi= sum(hi),
  Ni_asc= "-",
  Ni_dsc= "-",
  Hi_asc= "-",
  Hi_dsc= "-") 
TDF_latitudstur<- rbind(TDF_latitudstur,totales) 
TDF_latitudstur
##         liminf      limsup    MC  ni hi (%) Ni_asc Hi_asc(%) Ni_dsc Hi_dsc(%)
## 1      8.54641 10.85201079   9.7  50   5.88     50      5.88    850       100
## 2  10.85201079 13.15761158    12  75   8.82    125     14.71    800     94.12
## 3  13.15761158 15.46321237 14.31   0      0    125     14.71    725     85.29
## 4  15.46321237 17.76881316 16.62  50   5.88    175     20.59    725     85.29
## 5  17.76881316 20.07441395 18.92  50   5.88    225     26.47    675     79.41
## 6  20.07441395 22.38001474 21.23 125  14.71    350     41.18    625     73.53
## 7  22.38001474 24.68561553 23.53 150  17.65    500     58.82    500     58.82
## 8  24.68561553 26.99121632 25.84 225  26.47    725     85.29    350     41.18
## 9  26.99121632 29.29681711 28.14  75   8.82    800     94.12    125     14.71
## 10 29.29681711  31.6024179 30.45  50   5.88    850       100     50      5.88
## 11           -           -     - 850    100      -         -      -         -
#HISTOGRAMA STURGES

hist(latitud,
     breaks = seq(min(latitud),max(latitud),A),
     main="Gráfica No.77: Distribución de Cantidad de Latitud de Vertederos 
     del Estudio de Residuos de la India ",
     col="skyblue3",
     xlab = "Latitud (°)",
     ylab="Cantidad")

# PROCEDIMIENTO CON R

histogramalat<-hist(latitud,
                    main="Gráfica No.78:Distribución de Cantidad de Latitud de Vertederos
                    del Estudio de Residuos de la India ",
                    col="brown2",
                    xlab = "Latitud (°)",
                    ylab="Cantidad")

#Realizamos los limites
limites <- histogramalat$breaks
liminf <- limites[1:12]
limsup <- limites [2:13]
MC_latitud <- histogramalat$mids
ni<-histogramalat$counts
#Total de datos
sum(ni)
## [1] 850
#Frecuencia relativa(%)
hi<-(ni/sum(ni))*100

Ni_asc<-cumsum(ni)
Hi_asc<-cumsum(hi)
Ni_dsc<-rev(cumsum(rev(ni)))
Hi_dsc<-rev(cumsum(rev(hi)))

#Creamos la tabla
TDF_latitud<-data.frame(liminf,limsup,round(MC_latitud,2),ni,round(hi,2),Ni_asc,round(Hi_asc,2),Ni_dsc,round(Hi_dsc,2))
names(TDF_latitud) <- c("liminf","limsup","MC","ni","hi (%)","Ni_asc","Hi_asc(%)","Ni_dsc","Hi_dsc(%)")
TDF_latitud
##    liminf limsup MC  ni hi (%) Ni_asc Hi_asc(%) Ni_dsc Hi_dsc(%)
## 1       8     10  9  50   5.88     50      5.88    850    100.00
## 2      10     12 11  25   2.94     75      8.82    800     94.12
## 3      12     14 13  50   5.88    125     14.71    775     91.18
## 4      14     16 15   0   0.00    125     14.71    725     85.29
## 5      16     18 17  50   5.88    175     20.59    725     85.29
## 6      18     20 19  50   5.88    225     26.47    675     79.41
## 7      20     22 21  75   8.82    300     35.29    625     73.53
## 8      22     24 23 200  23.53    500     58.82    550     64.71
## 9      24     26 25  75   8.82    575     67.65    350     41.18
## 10     26     28 27 175  20.59    750     88.24    275     32.35
## 11     28     30 29  50   5.88    800     94.12    100     11.76
## 12     30     32 31  50   5.88    850    100.00     50      5.88
#Creamos la fila con los totales
totales <- c(
  li= "-",
  ls= "-",
  MC_latitud= "-",
  ni= sum(ni),
  hi= sum(hi),
  Ni_asc= "-",
  Ni_dsc= "-",
  Hi_asc= "-",
  Hi_dsc= "-") 
TDF_totales<- rbind(TDF_latitud,totales) 
TDF_totales
##    liminf limsup MC  ni hi (%) Ni_asc Hi_asc(%) Ni_dsc Hi_dsc(%)
## 1       8     10  9  50   5.88     50      5.88    850       100
## 2      10     12 11  25   2.94     75      8.82    800     94.12
## 3      12     14 13  50   5.88    125     14.71    775     91.18
## 4      14     16 15   0      0    125     14.71    725     85.29
## 5      16     18 17  50   5.88    175     20.59    725     85.29
## 6      18     20 19  50   5.88    225     26.47    675     79.41
## 7      20     22 21  75   8.82    300     35.29    625     73.53
## 8      22     24 23 200  23.53    500     58.82    550     64.71
## 9      24     26 25  75   8.82    575     67.65    350     41.18
## 10     26     28 27 175  20.59    750     88.24    275     32.35
## 11     28     30 29  50   5.88    800     94.12    100     11.76
## 12     30     32 31  50   5.88    850       100     50      5.88
## 13      -      -  - 850    100      -         -      -         -
#HISTOGRAMA R LOCAL ni
hist(latitud,
     breaks=limites,
     main = "Gráfica No.79 :Distribución de Cantidad de Latitud de Vertederos
     del Estudio de Residuos de la India ",
     xlab = "Latitud (°)",
     ylab = "Cantidad",
     col = "orange3")

#HISTOGRAMA R GLOBAL ni
hist(latitud,
     breaks=limites,
     col = "purple3",
     main="Gráfica No.80 :Distribución de Cantidad de Latitud de Vertederos 
     del Estudio de Residuos de la India  ",
     xlab="Latitud (°)",
     ylab = "Cantidad",
     ylim = c(0,850))

#HISTOGRMA R LOCAL hi

barplot(hi,space=0,
        col = "orange2",
        main ="Gráfica No.81:Distribución de Porcentaje de Latitud de Vertederos 
        del Estudio de Residuos de la India ",
        ylab="Porcentaje (%)",
        xlab="Latitud (°)",
        names.arg=TDF_latitud$MC )

#HISTOGRMA R GLOBAL hi 

barplot(hi,space=0,
        col = "purple3",
        main ="Gráfica No.82:Distribución de Porcentaje de Latitud de Vertederos
        del Estudio de Residuos de la India ",
        ylab="Porcentaje (%)",
        xlab="Latitud (°)",
        names.arg=TDF_latitud$MC ,
        ylim = c(0,100))

#DIAGRAMA DE CAJA
boxplot(latitud,
        col = "yellow2",
        main = "Gráfica No.83:Distribución de Cantidad de Latitud de Vertederos 
        del Estudio de Residuos de la India ",
        xlab="Latitud (°)",
        horizontal = TRUE)

#OJIVAS
#ni
plot(limsup, Ni_asc, type = "o", col = "blue", pch = 16,
     main = "Gráfico No.84:Ojivas Ascendente y Descendente de la Cantidad de 
     Latitud de los Vertederos del Estudio de Residuos de la India ",
     xlab = "Latitud (°)",
     ylab = "Cantidad")
lines(liminf, Ni_dsc,type = "o",col = "red3", pch = 16)

#hi
plot(limsup, Hi_asc, type = "o", col = "blue", pch = 16,
     main = "Gráfico No.85 :Ojivas Ascendente y Descendente del Porcentaje de 
     Latitud de los Vertederos del Estudio de Residuos de la India ",
     xlab = "Latitud (°)",
     ylab = "Porcentaje (%)")
lines(liminf, Hi_dsc,type = "o",col = "red3", pch = 16)

#INDICADORES ESTADISTICOS

#---- Indicadores de Tendencia Central
# Mediana
Me <- median(latitud)
Me
## [1] 23.07801
# Media
X <- mean(latitud)
X
## [1] 22.22345
# Moda
Mo <- "[22,24]"
Mo  
## [1] "[22,24]"
#---- Indicadores de Dispersión
# Varianza
var(latitud)
## [1] 33.05041
# Desviación estandar
sd <- sd(latitud)
sd
## [1] 5.748948
# Coeficiente de variación 
CV <- (sd(latitud)/X)*100
CV
## [1] 25.86883
#---- Indicadores de Forma
install.packages("e1071")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.4'
## (as 'lib' is unspecified)
library(e1071)

# Coeficiente de Asimetría
As <- skewness(latitud)
As
## [1] -0.7620922
# Curtosis
K <- kurtosis(latitud)
K
## [1] -0.06716425
#Tabla de indicadores

Variable <- "Latitud"
Rango <- "[8.54641 ,31.6024179]"
Tabla_indicadores <- data.frame(Variable,Rango,X,Me,Mo,sd,CV,As,K)
Tabla_indicadores
##   Variable                 Rango        X       Me      Mo       sd       CV
## 1  Latitud [8.54641 ,31.6024179] 22.22345 23.07801 [22,24] 5.748948 25.86883
##           As           K
## 1 -0.7620922 -0.06716425