Clasificación oficial de la posición del pozo según la ANP

1 Carga de Librerias

En esta sección se cargan las librerías necesarias para realizar 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")

2 Carga de datos

Se establece el directorio de trabajo, se importa la base de datos y se revisa su estructura general.

3 Extraer la variable

En esta sección se extrae la variable correspondiente a la posición geográfica de los pozos para su posterior análisis.

HEMISFERIO <- Datos$POCO_POS_ANP
TDFHEMISFERIO <- as.data.frame(table(HEMISFERIO))
TDFHEMISFERIO
##   HEMISFERIO  Freq
## 1          N 19297
## 2          S 10278
library(stringi)
Grupo_S <- stri_startswith_fixed(
  str = TDFHEMISFERIO$HEMISFERIO,
  pattern = "S"
)
TDFHEMISFERIO$HEMISFERIO <- ifelse(Grupo_S, "SUR", "NORTE")
head(TDFHEMISFERIO$HEMISFERIO)
## [1] "NORTE" "SUR"

4 Conteo

Se calculan las frecuencias absolutas (ni) y relativas porcentuales (hi).

TDFHEMISFERIO$Freq <- as.numeric(as.character(TDFHEMISFERIO$Freq))
library(dplyr)
TDF_ANP_s_n <- Datos$TDFHEMISFERIO
TDF_ANP_s_n <- TDFHEMISFERIO %>%
  group_by(HEMISFERIO) %>%
  summarise( 
    ni = sum(Freq),
    hi = round(sum(Freq) / sum(TDFHEMISFERIO$Freq)*100, 2))

TDF_ANP_s_n <- data.frame(TDF_ANP_s_n)

.

TDF_ANP_s_n$fi <- TDF_ANP_s_n$ni / sum(TDF_ANP_s_n$ni)
TDF_ANP_s_n <- TDF_ANP_s_n [, c("HEMISFERIO", "ni", "hi","fi")]
total_ni <- sum(TDF_ANP_s_n$ni)
total_hi <- sum(TDF_ANP_s_n$hi)
total_fi <- sum(TDF_ANP_s_n$fi)
TDFANPCOMPLETA <- rbind(TDF_ANP_s_n, data.frame(HEMISFERIO = "Total",
                                                ni = total_ni, 
                                                hi = total_hi,
                                                fi = total_fi))
print(TDFANPCOMPLETA)
##   HEMISFERIO    ni     hi        fi
## 1      NORTE 19297  65.25 0.6524768
## 2        SUR 10278  34.75 0.3475232
## 3      Total 29575 100.00 1.0000000

5 Tabla de frecuencia

Se presenta la tabla final en un formato estadístico formal.

library(gt)
gt(TDFANPCOMPLETA) %>%
  tab_header( 
    title = md("**Tabla N°1: DISTRIBUCIÓN DE FRECUENCIAS DE POZOS PETROLEROS DE BRASIL**"), 
    subtitle = "Hemisferio 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(TDFANPCOMPLETA))
  ) %>%
  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
Hemisferio de los pozos petrolíferos en Brasil
HEMISFERIO ni
Frecuencia Relativa
Porcentual (%) Fracción
NORTE 19297 65.25 0.6525
SUR 10278 34.75 0.3475
Total 29575 100.00 1.0000

6 Gráficas

6.1 Diagrama de barras frecuencia absoluta local

Se visualiza la distribución absoluta de los pozos por hemisferio.

TDFANPCOMPLETA<- TDFANPCOMPLETA[TDFANPCOMPLETA$HEMISFERIO != "Total", ]
par(mar = c(9, 4, 4, 2))
barplot(TDFANPCOMPLETA$ni,
        main = "Gráfica N°1: Distribución de pozos segun su hemisferio",
        ylab = "Cantidad",
        col = "#2E4053", names.arg = TDFANPCOMPLETA$HEMISFERIO,
        las = 1, cex.names = 1, cex.axis = 0.8, cex.main = 1)
mtext("HEMISFERIO", side = 1, line = 3, adj = 0.5, cex = 1)

6.2 Diagrama de barras frecuencia absoluta global

Se muestra la distribución absoluta considerando el total global.

par(mar = c(9, 4, 4, 2))
barplot(TDFANPCOMPLETA$ni,
        main = "Gráfica N°2: Distribución de pozos segun su hemisferio",
        ylab = "Cantidad",
        col = "#2E4053", names.arg = TDFANPCOMPLETA$HEMISFERIO,
        las = 1, cex.names = 1, cex.axis = 0.7, cex.main = 1,
        ylim = c(0,30000)) 
mtext("HEMISFERIO", side = 1, line = 3, adj = 0.5, cex = 1)

6.3 Diagrama de barras frecuencia relativa local

Se representa la distribución porcentual local.

par(mar = c(9, 4, 4, 2))
barplot(TDFANPCOMPLETA$hi,
        main = "Gráfica N°3: Distribución en porcentaje de pozos segun su hemisferio",
        ylab = "Porcentaje",
        col = "#2E4053", names.arg = TDFANPCOMPLETA$HEMISFERIO,
        las = 1, cex.names = 1, cex.axis = 0.7, cex.main = 1)
mtext("HEMISFERIO", side = 1, line = 3, adj = 0.5, cex = 1)

6.4 Diagrama de barras frecuencia relativa global

Se representa la distribución porcentual global.

par(mar = c(9, 4, 4, 2))
barplot(TDFANPCOMPLETA$hi,
        main = "Gráfica N°4: Distribución en porcentaje de pozos segun su hemisferio",
        ylab = "Porcentaje",
        col = "#2E4053", names.arg = TDFANPCOMPLETA$HEMISFERIO,
        las = 1, cex.names = 1, cex.axis = 0.7, cex.main = 1,
        ylim = c(0,100))
mtext("HEMISFERIO", side = 1, line = 3, adj = 0.5, cex = 1)

6.5 Diagrama circular

Se ilustra la participación porcentual de cada hemisferio.

library(ggplot2)
library(ggrepel)

datos_plot <- TDFANPCOMPLETA 
datos_plot$ymax <- cumsum(datos_plot$hi)
datos_plot$ymin <- c(0, head(datos_plot$ymax, n=-1))
datos_plot$posicion_label <- (datos_plot$ymax + datos_plot$ymin) / 2
colores <- c("#7FB3D5", "#566573")
ggplot(datos_plot, aes(ymax=ymax, ymin=ymin, xmax=4, xmin=0, fill=HEMISFERIO)) +
  geom_rect(color = "black") +
  coord_polar(theta="y") + 
  geom_label_repel(aes(y = posicion_label, x = 4, label = paste0(round(hi, 2))),
                   size = 4, 
                   nudge_x = 0.5,  
                   show.legend = FALSE) +
  scale_fill_manual(values = colores) +
  ggtitle("Gráfica N°5: Distribución porcentual de hemisferios") +
  theme_void()+
  theme(
    legend.position = "right",
    plot.title = element_text(hjust = 0.5),
    legend.background = element_rect(color = "black", 
                                     fill = "white",    
                                     linewidth = 0.5, 
                                     linetype = "solid"
    ), 
    legend.margin = margin(t = 10, r = 10, b = 10, l = 10))

7 Indicadores Estádistico

Conclusiones <- data.frame(
Variable = "Hemisferio de los pozos",
`Rango [Min; Max]` = "N/A",
`Media (X̄)` = "N/A",
`Mediana (Me)` = "N/A",
`Moda (Mo)` = "Norte",
`Varianza (S²)` = "N/A",
`Desv. Est. (S)` = "N/A",
`C.V. (%)` = "N/A",
`Asimetría (As)` = "N/A",
`Curtosis (K)` = "N/A",
`Valores Atípicos` = "N/A",
check.names = FALSE
)
library(gt)

gt(Conclusiones) %>%
tab_header(
title = md("**CONCLUSIONES Y ESTADÍSTICOS**"),
subtitle = "Resumen de Indicadores del Hemisferio de Pozos Petrolíferos en Brasil") %>%
tab_source_note(source_note = "Autor: Caleb Yanez ") %>%
  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))
CONCLUSIONES Y ESTADÍSTICOS
Resumen de Indicadores del Hemisferio de Pozos Petrolíferos en Brasil
Variable Rango [Min; Max] Media (X̄) Mediana (Me) Moda (Mo) Varianza (S²) Desv. Est. (S) C.V. (%) Asimetría (As) Curtosis (K) Valores Atípicos
Hemisferio de los pozos N/A N/A N/A Norte N/A N/A N/A N/A N/A N/A
Autor: Caleb Yanez

8 Conclusión

El valor más frecuente de Hemisferio de los pozos es Norte.