library(dplyr)
En este reporte se analiza la actividad de perforación de pozos en Ontario durante el periodo 1956–1965. El objetivo es evaluar si la cantidad de pozos perforados anualmente se ajusta a un Modelo Geométrico, el cual describe procesos donde la probabilidad de éxito (o ocurrencia) sigue un decaimiento constante.
# Carga de datos
datos <- read.csv("Petroleo_Ontaro.csv",
header = TRUE, sep = ";", dec = ".", fill = TRUE)
# Limpieza y filtrado de fechas
fechas <- as.Date(datos$TOTAL_DEPTH_REACHED_DATE,
tryFormats = c("%Y/%m/%d", "%Y-%m-%d", "%d/%m/%Y"))
años <- as.numeric(format(fechas, "%Y"))
# Filtrar periodo de estudio (1956-1965)
años_estudio <- años[!is.na(años) & años >= 1956 & años <= 1965]
# Tabla de frecuencias observadas (Fo)
tabla_años <- as.data.frame(table(años_estudio))
colnames(tabla_años) <- c("Año", "Fo")
tabla_años <- tabla_años[order(tabla_años$Año), ]
Fo <- tabla_años$Fo
n_total <- sum(Fo)
x <- seq_along(Fo) \(p\)El parámetro \(p\) representa la probabilidad de éxito en el modelo geométrico. Se estima mediante el método de los momentos
media_x <- sum(x * Fo) / n_total
p_hat <- 1 / media_x
# Frecuencias esperadas teóricas
probs_geom <- dgeom(x - 1, prob = p_hat)
Fe <- probs_geom * n_totalParámetro estimado \(\hat{p}\): r round(p_hat, 4)
Comparativa entre los datos reales (Observados) y lo que dicta el modelo matemático (Esperado).
tabla_final <- data.frame(
Año = tabla_años$Año,
X = x,
Observado = Fo,
Esperado = round(Fe, 2),
Probabilidad = round(probs_geom, 4)
)
knitr::kable(tabla_final, caption = "Comparativa: Frecuencias Observadas vs. Esperadas")| Año | X | Observado | Esperado | Probabilidad |
|---|---|---|---|---|
| 1956 | 1 | 457 | 662.71 | 0.2089 |
| 1957 | 2 | 450 | 524.30 | 0.1652 |
| 1958 | 3 | 367 | 414.79 | 0.1307 |
| 1959 | 4 | 333 | 328.16 | 0.1034 |
| 1960 | 5 | 334 | 259.62 | 0.0818 |
| 1961 | 6 | 294 | 205.40 | 0.0647 |
| 1962 | 7 | 234 | 162.50 | 0.0512 |
| 1963 | 8 | 224 | 128.56 | 0.0405 |
| 1964 | 9 | 262 | 101.71 | 0.0321 |
| 1965 | 10 | 218 | 80.46 | 0.0254 |
# Ajuste para el gráfico
probs_norm <- probs_geom / sum(probs_geom)
Fe_graf <- probs_norm * n_total
colores <- c("#7B2CBF", "#FF4D6D") # Morado / Rosa
par(mar = c(5, 5, 4, 2))
bp <- barplot(
rbind(Fo, Fe_graf),
beside = TRUE,
names.arg = tabla_final$Año,
col = colores,
main = "Ajuste de Pozos al Modelo Geométrico\nOntario (1956–1965)",
xlab = "Año de Perforación",
ylab = "Cantidad de Pozos",
ylim = c(0, max(Fo, Fe_graf) * 1.3),
border = "white", las = 1
)
# Línea de tendencia
lines(x = bp[2,], y = Fe_graf, type = "b", pch = 18, col = "black", lwd = 2)
legend("topright",
legend = c("Observado (Datos Reales)", "Esperado (Geométrico)", "Tendencia"),
fill = c(colores[1], colores[2], NA),
lty = c(NA, NA, 1), pch = c(NA, NA, 18), bty = "n", cex = 0.8)El análisis demuestra que la actividad petrolera en Ontario sigue patrones predecibles tanto físicos como temporales. Mientras que la regresión múltiple permite estimar la Profundidad Total mediante la elevación y el TVD, el modelo geométrico confirma que la frecuencia de perforación anual (1956–1965) sigue un decaimiento probabilístico con un parámetro \(p \approx\) r round(p_hat, 4). Esta combinación de modelos técnicos y estadísticos optimiza la planificación de futuras operaciones en la región