Modelo de Probabilidad de los Bloques de Concesión
setwd("C:/Users/Usuario/Desktop/Nueva carpeta")
library(readxl)
library(dplyr)
library(gt)
datos <- read_excel("tabela_de_pocos_janeiro_2018.xlsx")
Se importan los datos originales y se verifica su estructura para asegurar una lectura correcta.
Se obtiene la frecuencia absoluta de los bloques de concesión según su denominación.
Los bloques de concesión se agrupan según su denominación en regiones geográficas de Brasil, con el fin de facilitar un análisis espacial agregado.
TDFBloque$Region <- ifelse(is.na(TDFBloque$Bloque), "Sin información",
ifelse(grepl("^(POT|BPOT|REC|BREC|SEAL|BA|BT|PN|CE|AR|AL|SE|AG|RC|RP)", TDFBloque$Bloque), "Nordeste",
ifelse(grepl("^(BC|BS|ES|C-M|S-M|BM|BES|TUPI|LIBRA|LULA|BUZIOS|IARA|SP|RJ|CM|CF|CR)", TDFBloque$Bloque), "Sudeste",
ifelse(grepl("^(AM|SOL|FZA|AC|SF|SO)", TDFBloque$Bloque), "Norte",
ifelse(TDFBloque$Bloque %in% c("Brasil", "CP", "CAM", "ET", "RO", "FZB", "ARG", "MG", "DJM", "FP", "SZ", "FBM", "PIR", "CS"), "Campos Maduros/Genérico", "Otros")))))
TDFBloque$Region[TDFBloque$Region == "Sin información"] <- "Otros"
head(TDFBloque$Region)
## [1] "Otros" "Otros" "Otros" "Otros" "Otros" "Nordeste"
Se calculan las frecuencias absolutas y relativas por región.
TDFBloque$Freq <- as.numeric(as.character(TDFBloque$Freq))
library(dplyr)
TDFBloque_ <- Datos$TDFBloque
TDFBloque_ <- TDFBloque %>%
group_by(Region) %>%
summarise(
ni = sum(Freq),
hi = round(sum(Freq) / sum(TDFBloque$Freq)*100, 2))
TDFBloque_ <- data.frame(TDFBloque_)
Se incorpora una fila de totales a la tabla de frecuencias para consolidar la información y facilitar su interpretación estadística.
TDFBloque_ <- TDFBloque_ [, c("Region", "ni", "hi")]
TDFBloque_$fi <- TDFBloque_$ni / sum(TDFBloque_$ni)
total_ni <- sum(TDFBloque_$ni)
total_hi <- 100
total_fi <- sum(TDFBloque_$fi)
TDFBloque_1 <- rbind(TDFBloque_, data.frame(Region = "Total",
ni = total_ni,
hi = total_hi,
fi = total_fi))
print(TDFBloque_1)
## Region ni hi fi
## 1 Campos Maduros/Genérico 12633 42.72 0.427151310
## 2 Nordeste 3538 11.96 0.119628064
## 3 Norte 68 0.23 0.002299239
## 4 Otros 11654 39.40 0.394049028
## 5 Sudeste 1682 5.69 0.056872358
## 6 Total 29575 100.00 1.000000000
Se presenta la tabla final mediante un formato profesional utilizando la librería gt, optimizando la visualización y legibilidad de los resultados.
library(gt)
gt(TDFBloque_1) %>%
tab_header(
title = md("**Tabla N°1: DISTRIBUCIÓN DE FRECUENCIAS DE POZOS PETROLEROS DE BRASIL**"),
subtitle = "Distribución de los Bloques de Concesión por Ubicación") %>%
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(TDFBloque_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 | |||
| Distribución de los Bloques de Concesión por Ubicación | |||
| Region | ni |
Frecuencia Relativa
|
|
|---|---|---|---|
| Porcentual (%) | Fracción | ||
| Campos Maduros/Genérico | 12633 | 42.72 | 0.4272 |
| Nordeste | 3538 | 11.96 | 0.1196 |
| Norte | 68 | 0.23 | 0.0023 |
| Otros | 11654 | 39.40 | 0.3940 |
| Sudeste | 1682 | 5.69 | 0.0569 |
| Total | 29575 | 100.00 | 1.0000 |
Se visualiza la cantidad de bloques por región.
TDFBloque_2 <- TDFBloque_1[TDFBloque_1$Region!= "Total", ]
par(mar = c(9, 4, 4, 2))
barplot(TDFBloque_2$ni,
main = "Gráfica N°1: Distribución en cantidad de los bloques de concesión por ubicación",
ylab = "Cantidad",
col = "#2E4053", names.arg = TDFBloque_2$Region,
las = 2, cex.names = 0.79, cex.axis = 0.8, cex.main = 1)
mtext("Región", side = 1, line = 7)
Este gráfico representa el peso porcentual de cada región respecto del total de bloques analizados.
par(mar = c(9, 4, 4, 2))
barplot(TDFBloque_2$hi,
main = "Gráfica N°3: Distribución en porcentaje de los bloques de concesión por ubicación",
ylab = "Porcentaje",
col = "#2E4053", names.arg = TDFBloque_2$Region,
las = 2, cex.names = 0.79, cex.axis = 0.8, cex.main = 1)
mtext("Región", side = 1, line = 7)
Se construye la distribución de probabilidad empírica por región.
P_Bloque <- TDFBloque_2$ni / sum(TDFBloque_2$ni)
par(mar = c(9, 4, 4, 2))
barplot(P_Bloque,
main = "Gráfica N°3: Distribución de Probabilidad de los bloques de concesión por ubicación",
ylab = "Probabilidad",
col = "#2E4053", names.arg = TDFBloque_2$Region,
las = 2, cex.names = 0.79, cex.axis = 0.8, cex.main = 1)
mtext("Región", side = 1, line = 7)
¿Cuál es la probabilidad de que un bloque de concesión seleccionado aleatoriamente pertenezca a la región Nordeste?
x <- round(
(TDFBloque_2$ni[TDFBloque_2$Region == "Nordeste"] /
sum(TDFBloque_2$ni)) * 100, 1)
print(paste("La probabilidad es de:", x, "%"))
## [1] "La probabilidad es de: 12 %"
La probabilidad calculada indica que cerca del 12 % de los bloques de concesión se ubican en la región Nordeste, lo que evidencia una presencia moderada frente al total nacional.
¿Cuántos bloques de concesión existen en la región Nordeste?
p <- x / 100
n <- 1000
cantidad_esperada <- n * p
Bloque_objetivo <- "Nordeste"
cat("Para n =", n, "bloques de concesión esperada en", Bloque_objetivo, "=", round(cantidad_esperada, 2), "\n")
## Para n = 1000 bloques de concesión esperada en Nordeste = 120
Con base en el modelo probabilístico, para un conjunto hipotético de 1000 bloques, se espera que aproximadamente 120 bloques pertenezcan a la región Nordeste, manteniendo la proporción observada en los datos reales.