Modelo de Probabilidad de las Coordenadas de los Pozos Petroleros en Brasil
En esta sección se cargan las librerías necesarias para ejecutar las funciones utilizadas durante el procesamiento y análisis de los datos.
setwd("C:/Users/Usuario/Desktop/Nueva carpeta")
library(readxl)
library(dplyr)
library(gt)
datos <- read_excel("tabela_de_pocos_janeiro_2018.xlsx")
Se importa la base de datos de pozos petrolíferos de Brasil y se verifica la estructura de las variables para asegurar su correcta lectura.
En esta sección se extrae la variable correspondiente al tipo de coordenada base de los pozos petrolíferos para su posterior análisis.
Coordenada_base <- Datos$TIPO_DE_COORDENADA_DE_BASE
TDFCoordenada_base <- as.data.frame(table(Coordenada_base))
TDFCoordenada_base
## Coordenada_base Freq
## 1 Definitiva 29535
## 2 Provisória 40
español <- c("Definitiva", "Provisional")
levels(TDFCoordenada_base$Coordenada_base) <- español
head(TDFCoordenada_base$Coordenada_base)
## [1] Definitiva Provisional
## Levels: Definitiva Provisional
Se calculan la frecuencia absoluta (ni) y la frecuencia relativa porcentual (hi) para cada tipo de coordenada base.
TDFCoordenada_base$Freq <- as.numeric(as.character(TDFCoordenada_base$Freq))
library(dplyr)
TDFCoordenada_base1 <- Datos$TDFCoordenada_base
TDFCoordenada_base1 <- TDFCoordenada_base %>%
group_by(Coordenada_base) %>%
summarise(
ni = sum(Freq),
hi = round(sum(Freq) / sum(TDFCoordenada_base$Freq)*100, 2))
TDFCoordenada_base1 <- data.frame(TDFCoordenada_base1)
library(dplyr)
TDFCoordenada_base1 <- TDFCoordenada_base1[, c("Coordenada_base", "ni", "hi")]
orden_importancia <- c("Definitiva", "Provisional")
TDFCoordenada_base1$Coordenada_base <- factor(
TDFCoordenada_base1$Coordenada_base,
levels = orden_importancia
)
TDFCoordenada_base1 <- TDFCoordenada_base1 %>%
arrange(Coordenada_base)
TDFCoordenada_base1$fi <- TDFCoordenada_base1$ni / sum(TDFCoordenada_base1$ni)
fila_total <- data.frame(
Coordenada_base = "Total",
ni = sum(TDFCoordenada_base1$ni),
hi = sum(TDFCoordenada_base1$hi),
fi = sum(TDFCoordenada_base1$fi))
TDFCoordenada_base1.1 <- rbind(TDFCoordenada_base1,fila_total)
print(TDFCoordenada_base1.1)
## Coordenada_base ni hi fi
## 1 Definitiva 29535 99.86 0.998647506
## 2 Provisional 40 0.14 0.001352494
## 3 Total 29575 100.00 1.000000000
library(gt)
gt(TDFCoordenada_base1.1) %>%
tab_header(
title = md("**Tabla N°1: DISTRIBUCIÓN DE FRECUENCIAS DE POZOS PETROLEROS DE BRASIL**"),
subtitle = "Coordenada base de los Pozos Petrolíferos en Brasil") %>%
tab_spanner(
label = md("**Frecuencia Relativa**"),
columns = c(hi, fi)
) %>%
cols_label(
ni = md("**ni**"),
hi = md("Porcentual (%)"),
fi = md("Fracción")
) %>%
fmt_number(columns = hi, decimals = 2) %>%
fmt_number(columns = fi, decimals = 4) %>%
cols_align(align = "center", columns = everything()) %>%
tab_style(
style = list(cell_fill(color = "#2E4053"),
cell_text(color = "white", weight = "bold")),
locations = cells_title()
) %>%
tab_style(
style = list(cell_fill(color = "#F2F3F4"),
cell_text(weight = "bold", color = "#2E4053")),
locations = cells_column_labels()
) %>%
tab_style(
style = list(cell_fill(color = "#2E4053"),
cell_text(color = "white", weight = "bold")),
locations = cells_column_spanners()
) %>%
tab_style(
style = list(cell_fill(color = "#D5D8DC"),
cell_text(weight = "bold", color = "#2E4053")),
locations = cells_body(rows = nrow(TDFCoordenada_base1.1))
) %>%
tab_options(
table.border.top.color = "#2E4053",
table.border.bottom.color = "#2E4053",
column_labels.border.bottom.color = "#2E4053",
data_row.padding = px(6),
table.font.size = px(13)
)
| Tabla N°1: DISTRIBUCIÓN DE FRECUENCIAS DE POZOS PETROLEROS DE BRASIL | |||
| Coordenada base de los Pozos Petrolíferos en Brasil | |||
| Coordenada_base | ni |
Frecuencia Relativa
|
|
|---|---|---|---|
| Porcentual (%) | Fracción | ||
| Definitiva | 29535 | 99.86 | 0.9986 |
| Provisional | 40 | 0.14 | 0.0014 |
| Total | 29575 | 100.00 | 1.0000 |
Muestra la cantidad de pozos según el tipo de coordenada, excluyendo el total general, para comparar magnitudes.
TDFCoordenada_base2 <- TDFCoordenada_base1.1[TDFCoordenada_base1.1$Coordenada_base != "Total", ]
par(mar = c(9, 4, 4, 2))
barplot(TDFCoordenada_base2$ni,
main = "Gráfico No. 1. Distribución en cantidad de las coordenadas de los pozos",
xlab = "Coordenadas" , ylab = "Cantidad",
col = "#2E4053", names.arg = TDFCoordenada_base2$Coordenada_base,
las = 1, cex.names = 1, cex.axis = 0.8, cex.main = 1)
Presenta el porcentaje de pozos por tipo de coordenada, permitiendo una interpretación probabilística.
par(mar = c(9, 4, 4, 2))
barplot(TDFCoordenada_base2$hi,
main = "Gráfico No. 2. Distribución porcentual de las coordenadas de los pozos",
xlab = "Coordenadas" , ylab = "Porcentaje",
col = "#2E4053", names.arg = TDFCoordenada_base2$Coordenada_base,
las = 1, cex.names = 1, cex.axis = 0.8, cex.main = 1)
Se construye un modelo empírico de probabilidad a partir de las frecuencias relativas del tipo de coordenada de los pozos.
P_Coordenada <- TDFCoordenada_base2$ni / sum(TDFCoordenada_base2$ni)
par(mar = c(9, 4, 4, 2))
barplot(P_Coordenada,
main = "Gráfica N°3: Distribución de Probabilidad de las Coordenadas de los Pozos",
xlab = "Coordenadas", ylab = "Probabilidad",
col = "#2E4053", names.arg = TDFCoordenada_base2$Coordenada_base,
las = 1, cex.names = 0.8, cex.axis = 0.8, cex.main = 1)
¿Cuál es la probabilidad de que un pozo petrolero tenga una coordenada Provisional?
x <- round(
(TDFCoordenada_base2$ni[TDFCoordenada_base2$Coordenada_base == "Provisional"] /
sum(TDFCoordenada_base2$ni)) * 100, 1)
print(paste("La probabilidad es de:", x, "%"))
## [1] "La probabilidad es de: 0.1 %"
La probabilidad obtenida indica que aproximadamente el 0.1% de los pozos petrolíferos en Brasil tienen coordenadas provisionales.
¿Cuántos pozos petroleros pueden tener coordenadas provisionales?.
p <- x / 100
n <- 1000
cantidad_esperada <- n * p
coordenada_objetivo <- "Provisional"
cat("Para n =", n, "pozos, cantidad esperada de pozos con coordenadas provisionales", coordenada_objetivo, "=", round(cantidad_esperada, 2), "\n")
## Para n = 1000 pozos, cantidad esperada de pozos con coordenadas provisionales Provisional = 1
Se espera que aproximadamente 1 pozos petroleros tengan coordenadas provisionales, por cada 1000 pozos considerados.
El modelo probabilístico indica que aproximadamente el 0,1 % de los pozos petrolíferos en Brasil presentan coordenadas provisionales. Manteniendo esta proporción, se estima que por cada 1000 pozos, aproximadamente 1 tendría una coordenada provisional, lo que evidencia que la gran mayoría cuenta con coordenadas definitivas.