Clasificación oficial de la posición del pozo según la ANP
setwd("C:/Users/Usuario/Desktop/Nueva carpeta")
library(readxl)
library(dplyr)
library(gt)
datos <- read_excel("tabela_de_pocos_janeiro_2018.xlsx")
Se establece el directorio de trabajo, se importa la base de datos y se revisa su estructura general.
Se construye la tabla de frecuencia para la variable hemisferio.
HEMISFERIO <- Datos$POCO_POS_ANP
TDFHEMISFERIO <- as.data.frame(table(HEMISFERIO))
TDFHEMISFERIO
## HEMISFERIO Freq
## 1 N 19297
## 2 S 10278
Se reclasifican los datos en dos categorías generales: Norte y Sur.
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"
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)
Se agregan los totales generales de frecuencia absoluta y relativa.
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
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 |
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)
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)
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)
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)
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))
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 | ||||||||||
La moda de la variable corresponde al hemisferio Norte, lo que indica que la mayor concentración de pozos petrolíferos en Brasil se localiza en dicha región, reflejando una predominancia espacial de la actividad petrolera en el hemisferio norte del país.