# UNIVERSIDAD CENTRAL DEL ECUADOR
# Facultad de Ingeniería en Geología, Minas, Petroleos y Ambiental
# Ingeniería Ambiental
# Autor: Domenica Yepez
# Variable: continua Latitud 

#directorio de trabajo
setwd("C:/Users/HP/OneDrive - Universidad Central del Ecuador/SEMESTRE III/Estadistica/Incendios en Chile/Datos")
#extraer los datos 
library(readr)
datos <-   read_csv("coordenadas_convertidas_3857.csv")
## Rows: 5234 Columns: 4
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## dbl (4): long, lat, X_3857, Y_3857
## 
## ℹ 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.
#Extraccion variable Cuantitativa continua
latitud <- datos$lat
valoresnulos <- is.na(latitud)
latitud <- na.omit(latitud)
options(scipen = 999) 

#estadistica descriptiva para la variable total plantacion común 
min<- min(latitud )
max <- max(latitud )
R <- max-min
K <-floor(1+3.33*log10(length(latitud )))
A <-  (R/K)
lim_inf <- seq(from = min, by = A, length.out = K)
lim_sup <- lim_inf + A
MC <- (lim_inf+lim_sup)/2

ni <- c()
for (i in 1:K) {
  if (i != K) {
    ni[i] <- length(subset(latitud,
                           latitud >= lim_inf[i] & latitud < lim_sup[i]))
  } else {
    ni[i] <- length(subset(latitud,
                           latitud >= lim_inf[i] & latitud <= lim_sup[i]))
  }
}


sum(ni)
## [1] 5234
hi <- ni/sum(ni)*100
sum(hi)
## [1] 100
Ni_asc <- cumsum(ni)
Hi_asc <- cumsum(hi)
Ni_desc <- rev(cumsum(rev(ni)))
Hi_desc <- rev(cumsum(rev(hi)))

TDF_latitud <- data.frame(round(lim_inf,2),
                           round(lim_sup,2),
                           round(MC,2),ni,
                           round(hi,2), 
                           Ni_asc,
                           Ni_desc,
                           round(Hi_asc,2),
                           round(Hi_desc,2))

colnames(TDF_latitud) <- c("Lim inf","Lim sup","MC","ni","hi(%)",
                            "Ni asc","Hi asc(%)","Ni desc","Hi desc(%)")
totales <- c(lim_inf = "TOTAL", lim_sup = "-", MC = "-", ni = sum(ni), hi = sum(hi),
             Ni_asc = "-", Ni_desc = "-", Hi_asc = "-", Hi_desc = "-")

TDF_latitud <- rbind(TDF_latitud, totales)
TDF_latitud
##       Lim inf    Lim sup         MC   ni hi(%) Ni asc Hi asc(%) Ni desc
## 1     3981678 4287094.85 4134386.42   26   0.5     26      5234     0.5
## 2  4287094.85 4592511.69 4439803.27    2  0.04     28      5208    0.53
## 3  4592511.69 4897928.54 4745220.12    2  0.04     30      5206    0.57
## 4  4897928.54 5203345.38 5050636.96   21   0.4     51      5204    0.97
## 5  5203345.38 5508762.23 5356053.81   88  1.68    139      5183    2.66
## 6  5508762.23 5814179.08 5661470.65 1003 19.16   1142      5095   21.82
## 7  5814179.08 6119595.92  5966887.5 2316 44.25   3458      4092   66.07
## 8  6119595.92 6425012.77 6272304.35 1651 31.54   5109      1776   97.61
## 9  6425012.77 6730429.62 6577721.19  110   2.1   5219       125   99.71
## 10 6730429.62 7035846.46 6883138.04   14  0.27   5233        15   99.98
## 11 7035846.46 7341263.31 7188554.88    0     0   5233         1   99.98
## 12 7341263.31 7646680.15 7493971.73    0     0   5233         1   99.98
## 13 7646680.15    7952097 7799388.58    1  0.02   5234         1     100
## 14      TOTAL          -          - 5234   100      -         -       -
##    Hi desc(%)
## 1         100
## 2        99.5
## 3       99.47
## 4       99.43
## 5       99.03
## 6       97.34
## 7       78.18
## 8       33.93
## 9        2.39
## 10       0.29
## 11       0.02
## 12       0.02
## 13       0.02
## 14          -
#simplificar la tabla de distribucion de frecuencia con el histograma

Hist_densidad <- hist(latitud , main="Gráfica N°:Distribución de latitud afectada 
                      en Chile para la elaboración de la TDF",
                      xlab = "Latitud (°)",
                      ylab= "Cantidad", col ="#CBAACB") 

k.1 <- length(Hist_densidad$breaks)
Li<- Hist_densidad$breaks[1:(length(Hist_densidad$breaks) - 1)]
Ls <- Hist_densidad$breaks[2:length(Hist_densidad$breaks)]
ni.1 <- Hist_densidad$counts
sum(ni.1)
## [1] 5234
MC.1<- Hist_densidad$mids
hi.1 <- (ni.1/sum(ni.1))
sum(hi.1)
## [1] 1
Ni_asc.1<- cumsum(ni.1)
Hi_asc.1 <- cumsum(hi.1)
Ni_desc.1 <- rev(cumsum(rev(ni.1)))
Hi_desc.1 <- rev(cumsum(rev(hi.1)))
TDF_latitud.1 <- data.frame(Li = round(Li, 2),
                             Ls = round(Ls, 2),
                             MC.1 = round(MC.1, 2),
                             ni.1 = ni.1,
                             hi.1 = round(hi.1 * 100, 2),
                             Ni_asc.1 = Ni_asc.1,
                             Hi_asc.1 = round(Hi_asc.1 * 100, 2),
                             Ni_desc.1 = Ni_desc.1,
                             Hi_desc.1 = round(Hi_desc.1 * 100, 2))

colnames(TDF_latitud.1) <- c("Lim inf","Lim sup","MC","ni","hi(%)",
                              "Ni asc","Hi asc(%)","Ni desc","Hi desc(%)")
totales <- c(Li = "TOTAL", Ls = "-", MC.1 = "-", ni.1 = sum(ni.1), hi.1 = sum(hi.1*100),
             Ni_asc.1= "-", Ni_desc.1 = "-", Hi_asc.1 = "-", Hi_desc.1 = "-")  

TDF_latitud.1 <- rbind(TDF_latitud.1, totales)
TDF_latitud.1
##    Lim inf Lim sup      MC   ni hi(%) Ni asc Hi asc(%) Ni desc Hi desc(%)
## 1  3500000 4000000 3750000    1  0.02      1      0.02    5234        100
## 2  4000000 4500000 4250000   27  0.52     28      0.53    5233      99.98
## 3  4500000 5000000 4750000   19  0.36     47       0.9    5206      99.47
## 4  5000000 5500000 5250000   91  1.74    138      2.64    5187       99.1
## 5  5500000 6000000 5750000 2808 53.65   2946     56.29    5096      97.36
## 6  6000000 6500000 6250000 2187 41.78   5133     98.07    2288      43.71
## 7  6500000 7000000 6750000  100  1.91   5233     99.98     101       1.93
## 8  7000000 7500000 7250000    0     0   5233     99.98       1       0.02
## 9  7500000 8000000 7750000    1  0.02   5234       100       1       0.02
## 10   TOTAL       -       - 5234   100      -         -       -          -
#####################  Gráficas ###############################

# Histograma con la rergla de Sturgest###
breaks_sturges <- c(lim_inf, tail(lim_sup, 1))

hist(latitud, breaks = breaks_sturges, 
     main = "Gráfica N°: Distribución de latitud
     afectadas en Chile ",
     col = "salmon",
     xlab = "Latitud (°)",
     ylab = "Cantidad",
     xaxt = "n")

axis(side = 1, at = breaks_sturges, labels = round(breaks_sturges, 1), las = 1, cex.axis = 0.8)

# Histograma de ni que genera Rstudio 
# Local
hist(latitud,
     main = "Gráfica N°: Distribución de latitud
     afectadas en Chile",
     col = "skyblue",
     xlab = "Latitud (°)",
     ylab = "Cantidad")

# Gobal
hist(latitud,
     main = "Gráfica N°: Distribución de latitud
     afectadas en Chile",
     col = "salmon",
     xlab = "Latitud (°)",
     ylab = "Cantidad",
     ylim=c(0,5234))

# Histograma de hi que genera Rstudio 
#Local
barplot(hi.1*100,space=0,
        col = "skyblue",
        main ="Gráfica N°: Distribución de latitud
        afectadas en Chile",
        ylab="Porcentaje (%)",
        xlab="Latitud (°)",
        names.arg = MC.1)

# Global
barplot(hi.1*100,space=0,
        col = "salmon",
        main ="Gráfica N°: Distribución de latitud
        afectadas en Chile",
        ylab="Porcentaje (%)",
        xlab="Latitud (°)",
        ylim = c(0,100), 
        names.arg = MC.1)

# Ojivas Ni_asc Ni_dsc global y local ####
plot(Ls, Ni_desc.1,
     main = "Gráfica N°: Ojiva acumulada absoluta de latitud
     afectada en Chile",
     xlab = "Latitud (°)",
     ylab = "Cantidad",
     col = "salmon",
     type = "o",
     lwd = 3,
     pch = 16,
     ylim = c(0,5234))
lines(Li, Ni_asc.1,
      col = "blue",
      type = "o",
      pch = 16,
      lwd = 3)

#  Ojivas Hi_asc y Hi_dsc global y local ###

plot(MC.1, Hi_desc.1*100,
     main = "Gráfica N°: Ojiva acumulada relativa de latitud
     afectada en Chile",
     xlab = " Latitud (°)",
     ylab = "Porcentaje (%)",
     col = "salmon",
     type = "o",
     lwd = 3,
     pch = 16,
     ylim = c(0,100))
lines(MC.1, Hi_asc.1*100,
      col = "blue",
      type = "o",
      pch = 16,
      lwd = 3)

# Diagrama de caja de latitud 
cajaBigotes<-boxplot(latitud, horizontal=T, col="brown",
                     
                     main="Gráfica No7: Distribución de frecuencia para la latitud 
                     afectada en Chile", xlab="Latitud (°)")

### Indicadores ###
# Tendencia central
## Media aritmética
x <- mean(latitud)
x
## [1] 6003468
## Mediana 
Me <- median(latitud)
Me
## [1] 5940878
# Disperción 
## varianza 
V<-var(latitud)
V
## [1] 86644243951
## Deviación estandar
desv <- sd(latitud)
desv
## [1] 294353.9
### coeficiente variabilidad ####
CV <- (desv/x)*100
CV
## [1] 4.903065
# FORMA 
## Asimetria
library(e1071)
## Warning: package 'e1071' was built under R version 4.4.3
As <- skewness(latitud)
As
## [1] -1.22995
# Curtosis 
Ku<- kurtosis(latitud)
Ku
## [1] 7.998038
# Ouliers
outliers<-cajaBigotes$out
outliers
##  [1] 4949979 5096567 4970234 4958306 4105440 4108261 4088785 4111952 4110355
## [10] 4062365 4100295 3981678 4101873 4112003 4052189 4058481 4047779 4111864
## [19] 4158785 4127275 4108423 4086330 4173566 7952097 4814578 4820424 4946583
## [28] 4935863 4948660 4948830 4948268 4948656 4937552 5009712 4949283 4948924
## [37] 4954196 4964652 4913872 4967184 4948374 4247004 4261870 4267758 4268121
## [46] 4362677 4254521 4264032 4339929 4265044
# tabla de indicadores de la variable 

tabla_indicadores <- data.frame(
  Variable = "Latitud",
  Rango = paste0("{", round(min(latitud)), "-", round(max(latitud)), "}"),
  Media = round(x, 2),
  Mediana = round(Me, 2),
  Moda = "5500000 - 6500000",
  Varianza = round(V, 2),
  Desviacion = round(desv, 2),
  Coeficiente_Variacion = round(CV, 2),
  Asimetria = round(As, 2),
  Curtosis = round(Ku, 2),
  Valores_Atipicos = paste(length(outliers), "entre [", min(outliers), "-", max(outliers), "]")
)

library(knitr)
kable(tabla_indicadores, align = 'c', caption = "Tabla: Conclusiones de la variable latitud")
Tabla: Conclusiones de la variable latitud
Variable Rango Media Mediana Moda Varianza Desviacion Coeficiente_Variacion Asimetria Curtosis Valores_Atipicos
Latitud {3981678-7952097} 6003468 5940878 5500000 - 6500000 86644243951 294353.9 4.9 -1.23 8 50 entre [ 3981678 - 7952097 ]