Bloques de Concesión
Se cargan las librerías necesarias para ejecutar las funciones empleadas en el procesamiento, organización 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 establece el directorio de trabajo y se importan los datos originales, verificando su estructura para confirmar que las variables fueron reconocidas correctamente.
En esta sección se extrae la variable correspondiente a los bloques de la base de datos para su posterior análisis.
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 obtienen las frecuencias absoluta (ni) y relativa (hi) de los bloques agrupados por región, expresando esta última en porcentaje respecto del total.
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_)
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 |
El histograma muestra la cantidad de bloques por región sin considerar el total, permitiendo comparar visualmente las categorías.
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)
Se amplía la escala del eje vertical para resaltar regiones con mayor concentración de bloques de concesión.
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,
ylim = c(0,30000))
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 ajusta el eje vertical al 100 % para una interpretación directa de la participación relativa de cada región.
par(mar = c(9, 4, 4, 2))
barplot(TDFBloque_2$hi,
main = "Gráfica N°4: 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)
El diagrama circular muestra la proporción de bloques por región, facilitando la identificación de las zonas predominantes.
library(ggplot2)
library(ggrepel)
TDFBloque_2 <- TDFBloque_2[TDFBloque_2$Region != "Otros", ]
datos_plot <- TDFBloque_2
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
mis_colores <- c("#B0B8C1", "#D9E0E6", "#1F3B6E", "#4C6BA7", "#7D9BC8")
ggplot(datos_plot, aes(ymax=ymax, ymin=ymin, xmax=4, xmin=2, fill=Region)) +
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 = mis_colores) +
ggtitle("Gráfica N°5: Distribución porcentual de los bloques de concesión por ubicación") +
theme_void() +
theme(legend.position = "right",
plot.title = element_text(hjust = 0),
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 = "Bloques por Ubicación",
`Rango [Min; Max]` = "N/A",
`Media (X̄)` = "N/A",
`Mediana (Me)` = "N/A",
`Moda (Mo)` = "Campos Maduros/Genéricos",
`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 de los Bloques de Concesión por Ubicación de los Pozos Petroleros 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 de los Bloques de Concesión por Ubicación de los Pozos Petroleros 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 |
|---|---|---|---|---|---|---|---|---|---|---|
| Bloques por Ubicación | N/A | N/A | N/A | Campos Maduros/Genéricos | N/A | N/A | N/A | N/A | N/A | N/A |
| Autor: Caleb Yanez | ||||||||||
El valor más frecuente de Bloques por Ubicación es Campos Maduros/Genéricos.