Modelo de Probabilidad de las Coordenadas de los Pozos Petroleros en Brasil
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.
setwd("C:/Users/majke/Downloads/Proyecto Estadistica/RMARKDOWN")
Datos <- read.csv("Pozos brasil 2.csv", header = TRUE, sep = ";", dec = ",", fileEncoding = "Latin1")
str(Datos)
## 'data.frame': 29575 obs. of 59 variables:
## $ POCO : chr "7-RO-123HP-RJS" "1-BP-7-RJS" "7-ARGO-4H-ESS" "7-ARGO-5H-ESS" ...
## $ CADASTRO : num 7.43e+10 7.43e+10 3.43e+10 3.43e+10 3.43e+10 ...
## $ OPERADOR : chr "Petrobras" "BP Energy" "Shell Brasil" "Shell Brasil" ...
## $ POCO_OPERADOR : chr "7RO123HPRJS" "ANU" "7ARGO4HESS" "7ARGO5HESS" ...
## $ ESTADO : chr "RJ" "RJ" "ES" "ES" ...
## $ BACIA : chr "Campos" "Campos" "Campos" "Campos" ...
## $ BLOCO : chr "" "C-M-473" "" "" ...
## $ SIG_CAMPO : chr "RO " "" "ARGO " "ARGO " ...
## $ CAMPO : chr "RONCADOR" "" "ARGONAUTA" "ARGONAUTA" ...
## $ TERRA_MAR : chr "M" "M" "M" "M" ...
## $ POCO_POS_ANP : chr "S" "S" "S" "S" ...
## $ TIPO : chr "Explotatório" "Exploratório" "Explotatório" "Explotatório" ...
## $ CATEGORIA : chr "Desenvolvimento" "Pioneiro" "Desenvolvimento" "Desenvolvimento" ...
## $ RECLASSIFICACAO : chr "PRODUTOR COMERCIAL DE PETRÓLEO" "PORTADOR DE PETRÓLEO" "ABANDONADO POR OUTRAS RAZÕES" "INDEFINIDO" ...
## $ SITUACAO : chr "PRODUTOR" "ABANDONADO POR LOGÍSTICA EXPLORATÓRIA" "ABANDONADO DEFINITIVAMENTE" "PRODUTOR" ...
## $ INICIO : chr "03/03/2012" "14/03/2012" "12/04/2012" "14/04/2012" ...
## $ TERMINO : chr "10/03/2013" "20/09/2012" "19/09/2012" "02/05/2013" ...
## $ CONCLUSAO : chr "10/03/2013" "19/10/2012" "28/09/2012" "13/05/2013" ...
## $ TITULARIDADE : chr "Público" "Público" "Público" "Público" ...
## $ LATITUDE_BASE_4C : chr "-21:57:45,630" "-23:06:09,622" "-21:08:06,801" "-21:08:12,535" ...
## $ LONGITUDE_BASE_4C : chr "-39:44:01,130" "-40:00:41,295" "-39:46:53,226" "-39:46:49,296" ...
## $ LATITUDE_BASE_DD : num -22 -23.1 -21.1 -21.1 -21.1 ...
## $ LONGITUDE_BASE_DD : num -39.7 -40 -39.8 -39.8 -39.8 ...
## $ DATUM_HORIZONTAL : chr "SIRGAS2000" "SIRGAS2000" "SIRGAS2000" "SIRGAS2000" ...
## $ TIPO_DE_COORDENADA_DE_BASE: chr "Definitiva" "Definitiva" "Definitiva" "Definitiva" ...
## $ DIRECAO : chr "Horizontal" "Vertical" "Horizontal" "Horizontal" ...
## $ PROFUNDIDADE_VERTICAL_M : num -3145 6900 2937 2934 2953 ...
## $ PROFUNDIDADE_SONDADOR_M : num 4050 6925 3809 4575 4570 ...
## $ PROFUNDIDADE_MEDIDA_M : num 4050 6925 3809 4575 4570 ...
## $ REFERENCIA_DE_PROFUNDIDADE: chr "MR" "MR" "MR" "MR" ...
## $ MESA_ROTATIVA : num 24 25 24.2 24.2 24.2 ...
## $ COTA_ALTIMETRICA_M : num 0 0 0 0 0 ...
## $ LAMINA_D_AGUA_M : num 1827 2730 1706 1705 1654 ...
## $ DATUM_VERTICAL : chr "NM" "NM" "NM" "NM" ...
## $ UNIDADE_ESTRATIGRAFICA : chr "" "" "" "" ...
## $ GEOLOGIA_GRUPO_FINAL : chr "Campos" "Lagoa Feia" "Campos" "Campos" ...
## $ GEOLOGIA_FORMACAO_FINAL : chr "Carapebus" "Macabu" "Ubatuba" "Ubatuba" ...
## $ GEOLOGIA_MEMBRO_FINAL : chr "" "" "" "" ...
## $ CDPE : chr "Existe" "Existe" "Existe" "" ...
## $ AGP : chr "" "" "" "" ...
## $ PC : chr "" "Existe" "" "" ...
## $ PAG : chr "" "" "" "" ...
## $ PERFIS_CONVENCIONAIS : chr "" "Existe" "" "" ...
## $ DURANTE_PERFURACAO : chr "Existe" "Existe" "Existe" "Existe" ...
## $ PERFIS_DIGITAIS : chr "" "" "" "" ...
## $ PERFIS_PROCESSADOS : chr "" "" "" "" ...
## $ PERFIS_ESPECIAIS : chr "" "" "" "" ...
## $ AMOSTRA_LATERAL : chr "" "Existe" "" "" ...
## $ SISMICA : chr "" "Existe" "" "" ...
## $ TABELA_TEMPO_PROFUNDIDADE : chr "" "" "" "" ...
## $ DADOS_DIRECIONAIS : chr "Existe" "Existe" "Existe" "Existe" ...
## $ TESTE_A_CABO : chr "Existe" "Existe" "" "" ...
## $ TESTE_DE_FORMACAO : chr "" "" "" "" ...
## $ CANHONEIO : chr "" "" "" "" ...
## $ TESTEMUNHO : chr "" "" "" "" ...
## $ GEOQUIMICA : chr "" "" "" "" ...
## $ SIG_SONDA : chr "SS-49" "DS4" "NB2" "NB2" ...
## $ NOM_SONDA : chr "SEDCO 707" "Deep Ocean Clarion" "Bully 2" "Bully 2" ...
## $ DHA_ATUALIZACAO : chr "28/1/18 5:00" "28/1/18 5:00" "28/1/18 5:00" "28/1/18 5:00" ...
Se calcula la frecuencia absoluta de los pozos según el tipo de coordenada base registrada.
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 obtienen las frecuencias absolutas (ni) y relativas (hi) de los pozos petrolíferos según el tipo de coordenada.
TDFCoordenada_base$Freq <- as.numeric(as.character(TDFCoordenada_base$Freq))
library(dplyr)
##
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
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)
Agregar Totales
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)
fila_total <- data.frame(
Coordenada_base = "Total",
ni = sum(TDFCoordenada_base1$ni),
hi = round(sum(TDFCoordenada_base1$hi), 2))
TDFCoordenada_base1.1 <- rbind(
TDFCoordenada_base1,
fila_total)
print(TDFCoordenada_base1.1)
## Coordenada_base ni hi
## 1 Definitiva 29535 99.86
## 2 Provisional 40 0.14
## 3 Total 29575 100.00
library(gt)
gt(TDFCoordenada_base1.1) %>%
tab_header(
title = md("**DISTRIBUCIÓN DE FRECUENCIAS DE POZOS PETROLEROS DE BRASIL**"),
subtitle = "Coordenada base de los Pozos Petrolíferos en Brasil") %>%
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_options(
table.border.top.color = "#2E4053",
table.border.bottom.color = "#2E4053",
column_labels.border.bottom.color = "#2E4053",
data_row.padding = px(6))
| DISTRIBUCIÓN DE FRECUENCIAS DE POZOS PETROLEROS DE BRASIL | ||
| Coordenada base de los Pozos Petrolíferos en Brasil | ||
| Coordenada_base | ni | hi |
|---|---|---|
| Definitiva | 29535 | 99.86 |
| Provisional | 40 | 0.14 |
| Total | 29575 | 100.00 |
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.