#### UNIVERSIDAD CENTRAL DEL ECUADOR ######
#### AUTOR: JHONNY JOSÉ CATUCUAMBA CALCAN ####
#### CARRERA: INGENIERÍA AMBIENTAL ####
### VARIABLE: TOTAL_VEG ####
### MODELO DE DISPERSIÓN LOG-NORMAL #####
setwd("/cloud/project")
Datos <-  read.csv("Conaf_Data_Chile_2017.csv")
total_veg <- Datos$total_veg
# Eliminar NA y valores negativos si los hubiera
total_veg <- na.omit(total_veg)
total_veg_mayores_cero <- subset(total_veg, total_veg > 0)

# Crear objeto boxplot
bp <- boxplot(total_veg_mayores_cero, plot = FALSE)
# Obtener los outliers identificados por el boxplot
outliers <- bp$out

# Separar valores atípicos
total_veg_outliers <- total_veg_mayores_cero[total_veg_mayores_cero %in% outliers]

# Separar valores comunes
total_veg_comunes <- total_veg_mayores_cero[!total_veg_mayores_cero %in% outliers]
hist_vegc <- hist(total_veg_comunes,breaks = 12,freq = FALSE,
                  main = "Gráfica Nº 4.1.1 : Modelo de probabilidad exponencial",
                  xlab = "Vegetación Total(ha)",
                  ylab = "Densidad de Probabilidad")

# Separar valores comunes
total_veg_comunes <- total_veg_comunes[total_veg_comunes > 3 & total_veg_comunes <= 5]
summary(total_veg_comunes)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   3.070   3.555   4.000   3.971   4.310   4.800
length(total_veg_comunes)
## [1] 199
hist_veg <- hist(total_veg_comunes,breaks = 5,freq = FALSE,
                 main = "Gráfica Nº 4.2.1 : Modelo de probabilidad log-normal",
                 xlab = "Vegetación Total(ha)",
                 ylab = "Densidad de Probabilidad")

#Modelo Log-normal
hist_veg <- hist(total_veg_comunes,breaks = 5,freq = FALSE,
                 main = "Gráfica Nº 4.2.2 : Modelo de probabilidad y curva log-normal",
                 xlab = "Vegetación Total(ha)",
                 ylab = "Densidad de Probabilidad")
log_total <- log(total_veg_comunes)
ulog <- mean(log_total)
sigmalog <- sd(log_total)
x <- seq(min(total_veg_comunes), max(total_veg_comunes), 0.0001)
curve(dlnorm(x, ulog, sigmalog), type = "l", col = "red", lwd = 2, add = TRUE)

FO_l <- hist_veg$counts
FE_l <- c()
for (i in 1:(length(hist_veg$breaks) - 1)) {
  P <- (plnorm(hist_veg$breaks[i + 1], ulog, sigmalog)) -
    (plnorm(hist_veg$breaks[i], ulog, sigmalog))
  FE_l[i] <- P * length(total_veg_comunes)
}
# Test de Pearson (debe pasar el 75% o 0.75 )
cor(FO_l, FE_l)
## [1] 0.8330371
## APROBADO ##
# Test de Chi-Cuadrado (aprueba con FALSE)
X2 <- sum((FO_l - FE_l)^2 / FE_l)
X2
## [1] 17.80124
VC <- qchisq(0.9999, 3)
VC
## [1] 21.10751
X2 > VC
## [1] FALSE
# Cálculo de probabilidad
plot(1, type = "n", axes = FALSE, xlab = "", ylab = "") # Crear un gráfico vacío
text(x = 1, y = 1,
     labels = "CÁLCULO DE PROBABILIDAD",
     cex = 2, # Tamaño del texto (ajustable)
     col = "blue", # Color del texto
     font = 6) #tipo

P1 <- (plnorm(4.5, ulog, sigmalog) - plnorm(4, ulog, sigmalog)) * 100
P1
## [1] 31.85437
plot(1, type = "n", axes = FALSE, xlab = "", ylab = "") # Crear un gráfico vacío
text(x = 1, y = 1,
     labels = "Cálculos de probabilidad\n(Estimación general)\n
¿Cuál es la probabilidad de que\nel valor de total de vegetación afectada (ha) \nesté entre 4 y 4.5? R: 31.85 (%)",
     cex = 1.5, # Tamaño del texto (ajustable)
     col = "blue", # Color del texto
     font = 6) #tipo

x <- seq(min(total_veg_comunes), max(total_veg_comunes), 0.01)
x_area <- seq(4, 4.5, length.out = 100)
plot(x, dlnorm(x, meanlog = ulog, sdlog = sigmalog), type = "l", col = "red", lwd = 2,
     main = "Gráfica Nº 4.3: Cálculo de Probabilidad de Vegetación Total",
     xlab = "Superficie afectada (ha)",
     ylab = "Densidad de probabilidad",
     xaxt = "n")
polygon(c(4, x_area, 4.5), c(0, dlnorm(x_area, meanlog = ulog, sdlog = sigmalog), 0),
        col = rgb(0, 0, 1, alpha = 0.3),
        border = NA)
axis(1, at = c(0, 4, 4.5, 0.8), labels = c("0", "4", "4.5", "0.8"))
legend("topright", legend = c("Modelo Log-normal", "Área bajo la curva entre 4 y 4.5"),
       col = c("red", rgb(0, 0, 1, alpha = 0.3)), lty = 1, lwd = 2,cex = 0.6,
       x.intersp = 0.05,y.intersp = 0.5,inset = 0.001)

# Estimación por intervalos de confianza
# Cálculos
limite_inf <- mean(total_veg_comunes) - 2 * (sd(total_veg_comunes) / sqrt(length(total_veg_comunes)))
limite_inf
## [1] 3.904531
limite_sup <- mean(total_veg_comunes) + 2 * (sd(total_veg_comunes) / sqrt(length(total_veg_comunes)))
limite_sup
## [1] 4.037378
# La media aritmética poblacional (u) se encuentra,
# con un 95 % de confianza, entre
# 3.90 (ha) y 4.03 (ha)
tabla_modelos <- data.frame("Vegetación Total (ha)" = c("[3.07 , 4.80]", ""),
                              "Modelo" = c("Log-normal", ""),
                              "Parámetros" = c("Sigma = 0.12", "u = 1.37"),
                              "Test_de_Pearson" = c("0.83", ""),
                              "Test_de_Chi_cuadrado" = c("aprobado", ""))
colnames(tabla_modelos) <- c("Vegetación Total (ha)", "Modelo",
                               "Parámetros", "Test Pearson",
                               "Test Chi-cuadrado")
tabla_intervalos <- data.frame(
  "Intervalo_Confianza" = c("Límite Inferior", "Límite Superior"),
  "Grado_Confianza" = c("95 %", ""),
  "Vegetación Total (ha)" = c("3.90", "4.03"))
colnames(tabla_intervalos) <- c("Intervalo de Confianza",
                                "Grado Confianza (%)", "Vegetación Total (ha)")
plot(1, type = "n", axes = FALSE, xlab = "", ylab = "") # Crear un gráfico vacío
text(x = 1, y = 1,
     labels = "CONCLUSIONES",
     cex = 2, # Tamaño del texto (ajustable)
     col = "blue", # Color del texto
     font = 6) #tipo

library(knitr)
kable(tabla_modelos, align = 'c',
      caption = "Conclusiones del Modelo Exponencial para Vegetación Total (ha)")
Conclusiones del Modelo Exponencial para Vegetación Total (ha)
Vegetación Total (ha) Modelo Parámetros Test Pearson Test Chi-cuadrado
[3.07 , 4.80] Log-normal Sigma = 0.12 0.83 aprobado
u = 1.37
kable(tabla_intervalos, align = 'c',
      caption = "Intervalos de Confianza de la Media Poblacional")
Intervalos de Confianza de la Media Poblacional
Intervalo de Confianza Grado Confianza (%) Vegetación Total (ha)
Límite Inferior 95 % 3.90
Límite Superior 4.03