Campos de producción de los pozos petrolíferos en Brasil
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")
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 campos petrolíferos de la base de datos para su posterior análisis.
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)
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 | ||||||||||
El valor más frecuente de Campos de producción es Otros Campos.