Campos de producción de los pozos petrolíferos en Brasil
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.
Se obtiene la frecuencia absoluta de pozos perforados por estado.
Se agrupan los campos en categorías generales según patrones presentes en su denominación.
sum(table(TDFCampo$Campos))
## [1] 542
Se calculan las frecuencias absoluta (ni) y relativa (hi) de cada grupo de campos.
TDFCampo$Freq <- as.numeric(as.character(TDFCampo$Freq))
library(dplyr)
TDFCampos <- Datos$TDFCampo
TDFCampos <- TDFCampo %>%
group_by(Campo) %>%
summarise(
ni = sum(Freq),
hi = round(sum(Freq) / sum(TDFCampo$Freq)*100, 4))
TDFCampos <- data.frame(TDFCampos)
Se presenta el cuadro resumen con los totales de frecuencia absoluta y relativa.
TDFCampos <- TDFCampos [, c("Campo", "ni", "hi")]
TDFCampos$fi <- TDFCampos$ni / sum(TDFCampos$ni)
total_ni <- sum(TDFCampos$ni)
total_hi <- sum(TDFCampos$hi)
total_fi <- sum(TDFCampos$fi)
TDFCampos1 <- rbind(TDFCampos, data.frame( Campo = "Total",
ni = total_ni,
hi = total_hi,
fi = total_fi))
print(TDFCampos1)
## Campo ni hi fi
## 1 Campos fluviales 790 2.6712 0.026711750
## 2 Campos insulares 130 0.4396 0.004395604
## 3 Campos lacustres 292 0.9873 0.009873204
## 4 Campos marinos 3904 13.2003 0.132003381
## 5 Extensiones geograficas 531 1.7954 0.017954353
## 6 Otros campos 23928 80.9062 0.809061708
## 7 Total 29575 100.0000 1.000000000
Se genera una tabla formal utilizando el paquete gt.
library(gt)
gt(TDFCampos1) %>%
tab_header(
title = md("**Tabla N°1: DISTRIBUCIÓN DE FRECUENCIAS DE POZOS PETROLEROS DE BRASIL**"),
subtitle = "Campos de Producción de los Pozos Petrolíferos") %>%
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(TDFCampos1))
) %>%
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 | |||
| Campos de Producción de los Pozos Petrolíferos | |||
| Campo | ni |
Frecuencia Relativa
|
|
|---|---|---|---|
| Porcentual (%) | Fracción | ||
| Campos fluviales | 790 | 2.67 | 0.0267 |
| Campos insulares | 130 | 0.44 | 0.0044 |
| Campos lacustres | 292 | 0.99 | 0.0099 |
| Campos marinos | 3904 | 13.20 | 0.1320 |
| Extensiones geograficas | 531 | 1.80 | 0.0180 |
| Otros campos | 23928 | 80.91 | 0.8091 |
| Total | 29575 | 100.00 | 1.0000 |
Se muestra la distribución en cantidad de campos petroleros por grupo a nivel local.
TDFCampos1 <- TDFCampos1[TDFCampos1$Campo != "Total", ]
par(mar = c(9, 4, 4, 2))
barplot(TDFCampos1$ni,
main = "Gráfica N°1: Distribución en cantidad de campos petroleros por grupo",
ylab = "Cantidad",
col = "#2E4053", names.arg = TDFCampos1$Campo,
las = 2, cex.names = 0.8, cex.axis = 0.8, cex.main = 1)
mtext("Campos", side = 1, line = 7)
Se presenta la distribución en cantidad de campos petroleros por grupo a nivel global.
par(mar = c(9, 4, 4, 2))
barplot(TDFCampos1$ni,
main = "Gráfica N°2: “Distribución en cantidad de campos petroleros por grupo",
ylab = "Cantidad",
col = "#2E4053", names.arg = TDFCampos1$Campo,
las = 2, cex.names = 0.8, cex.axis = 0.8, cex.main = 1,
ylim = c(0,30000))
mtext("Campos", side = 1, line = 7)
Se muestra la distribución porcentual de campos petroleros por grupo a nivel local.
par(mar = c(9, 4, 4, 2))
barplot(TDFCampos1$hi,
main = "Gráfica N°3: Distribución porcentual de campos petroleros por grupo",
ylab = "Porcentaje",
col = "#2E4053", names.arg = TDFCampos1$Campo,
las = 2, cex.names = 0.8, cex.axis = 0.8, cex.main = 1)
mtext("Campos", side = 1, line = 7)
Se presenta la distribución porcentual de campos petroleros por grupo a nivel global.
par(mar = c(9, 4, 4, 2))
barplot(TDFCampos1$hi,
main = "Gráfica N°4: Distribución porcentual de campos petroleros por grupo",
ylab = "Porcentaje",
col = "#2E4053", names.arg = TDFCampos1$Campo,
las = 2, cex.names = 0.8, cex.axis = 0.8, cex.main = 1,
ylim = c(0,100))
mtext("Campos", side = 1, line = 7)
Se representa gráficamente la distribución porcentual de los campos petroleros por grupo.
library(ggplot2)
library(ggrepel)
datos_plot <- TDFCampos1
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("#0D47A1", "#1565C0","#1976D2", "#1E88E5", "#64B5F6", "#90CAF9")
ggplot(datos_plot, aes(ymax=ymax, ymin=ymin, xmax=4, xmin=2, fill=Campo)) +
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 campos petroleros por grupo") +
theme_void() +
theme(legend.position = "right",
plot.title = element_text(hjust = 0))
Conclusiones <- data.frame(
Variable = "Campos de producción",
`Rango [Min; Max]` = "N/A",
`Media (X̄)` = "N/A",
`Mediana (Me)` = "N/A",
`Moda (Mo)` = "Otros Campos",
`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 Campos de Producció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 Campos de Producció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 |
|---|---|---|---|---|---|---|---|---|---|---|
| Campos de producción | N/A | N/A | N/A | Otros Campos | N/A | N/A | N/A | N/A | N/A | N/A |
| Autor: Caleb Yanez | ||||||||||
La distribución de los campos de producción de los pozos petrolíferos en Brasil muestra una clara predominancia de la categoría Otros campos, la cual constituye la moda de la variable analizada. Esto evidencia una alta diversidad en la denominación y clasificación de los campos, sin una concentración marcada en una única categoría específica.