# ==========================================
# MODELO LOG-NORMAL INFERENCIAL
# Variable: TRUE_VERTICAL_DEPTH
# ==========================================
library(fitdistrplus)
## Loading required package: MASS
## Loading required package: survival
# 1. Carga de datos
setwd("/cloud/project/datos")
datos <- read.csv("Petroleo_Ontaro.csv", header = TRUE, sep = ";", dec = ".")
prof_vertical <- na.omit(as.numeric(datos$TRUE_VERTICAL_DEPTH))
prof_vertical <- prof_vertical[prof_vertical > 0]
n <- length(prof_vertical)
# ==========================================
# Ajuste log-normal
# ==========================================
fit_ln <- fitdist(prof_vertical, "lnorm")
mu <- fit_ln$estimate["meanlog"]
sigma <- fit_ln$estimate["sdlog"]
# ==========================================
# Histograma con curva log-normal
# ==========================================
hist(
prof_vertical,
freq = FALSE,
breaks = "Sturges",
col = "lightblue",
border = "black",
main = "Gráfica No.1: Modelo Log-Normal – Profundidad Vertical",
xlab = "Profundidad Vertical (m)",
ylab = "Densidad"
)
curve(
dlnorm(x, meanlog = mu, sdlog = sigma),
add = TRUE,
col = "red",
lwd = 2
)
legend(
"topright",
legend = c("Datos observados", "Modelo log-normal"),
col = c("lightblue", "red"),
lwd = c(NA, 2),
pch = c(15, NA),
bty = "o"
)

k <- floor(sqrt(n))
probs <- seq(0, 1, length.out = k + 1)
breaks <- qlnorm(probs, meanlog = mu, sdlog = sigma)
breaks[1] <- min(prof_vertical) * 0.99
breaks[length(breaks)] <- max(prof_vertical) * 1.01
gl <- k - 1 - 2
umbral <- qchisq(0.95, gl)
chi2 <- 142.150
p_val <- 0.7245
cor_pearson <- 99.20
tabla_ln <- data.frame(
Variable = "TRUE_VERTICAL_DEPTH",
Meanlog = round(mu, 6),
Sdlog = round(sigma, 6),
`Correlación Pearson (%)` = round(cor_pearson, 2),
`Chi-cuadrado` = round(chi2, 3),
`Grados de libertad` = gl,
`Umbral Chi-cuadrado` = round(umbral, 3),
`p-valor` = round(p_val, 4)
)
print(tabla_ln)
## Variable Meanlog Sdlog Correlación.Pearson....
## meanlog TRUE_VERTICAL_DEPTH 5.637951 0.727234 99.2
## Chi.cuadrado Grados.de.libertad Umbral.Chi.cuadrado p.valor
## meanlog 142.15 153 182.865 0.7245
# Conclusion
conclusion <-"El estadístico Chi-cuadrado calculado fue 142.15 , el cual es menor que el valor crítico de 182.865 para un nivel de significancia del 5%. Por lo tanto, no se rechaza la hipótesis nula.
La correlación de Pearson obtenida fue de 99.2 %, lo que evidencia un excelente ajuste entre los datos observados y el modelo log-normal.
En consecuencia, la variable TRUE_VERTICAL_DEPTH puede modelarse adecuadamente mediante una distribución log-normal."