1. Configuración y Carga de Datos

datos_originales <- readr::read_csv2("C:/Users/cordo/OneDrive/Desktop/ESTADISITCA/Oil__Gas____Other_Regulated_Wells__Beginning_1860.csv")
head(datos_originales, 5)
## # A tibble: 5 × 55
##   `API Well Number` `County Code` `API Hole Number` Sidetrack Completion
##               <dbl>         <dbl>             <dbl>     <dbl>      <dbl>
## 1           3.10e15             3              2670         0          0
## 2           3.10e15             3              4599         0          0
## 3           3.10e15             3              4842         0          0
## 4           3.10e15             3              5419         0          0
## 5           3.11e15           101             26525         0          0
## # ℹ 50 more variables: `Well Name` <chr>, `Company Name` <chr>,
## #   `Operator Number` <dbl>, `Well Type` <chr>, `Map Symbol` <chr>,
## #   `Well Status` <chr>, `Status Date` <chr>, `Permit Application Date` <chr>,
## #   `Permit Issued Date` <chr>, `Date Spudded` <chr>,
## #   `Date of Total Depth` <chr>, `Completion Decade` <chr>,
## #   `Completion Year` <chr>, `Completion Month` <chr>, `Completion Day` <chr>,
## #   `Date Well Plugged` <chr>, `Date Well Confidentiality Ends` <chr>, …

2. Extracción y Limpieza de la Variable

datos_limpios <- datos_originales %>%
  select(`Producing Field`) %>%
  filter(!is.na(`Producing Field`)) %>%
  mutate(`Producing Field` = as.character(trimws(`Producing Field`)))

head(datos_limpios, 10)
## # A tibble: 10 × 1
##    `Producing Field`      
##    <chr>                  
##  1 Beech Hill-Independence
##  2 Wyoming Village        
##  3 Danley Corners         
##  4 Danley Corners         
##  5 Marsh                  
##  6 Andover                
##  7 Northwoods             
##  8 Andover                
##  9 Marsh                  
## 10 Beech Hill-Independence

3. Identificación de la Variable

  • Variable: PRODUCING FIELD (Campo Productor).
  • Tipo: Cualitativa Nominal.
  • Descripción: Nombre del campo geológico o área donde se encuentra el pozo en producción.

4. Tabla de Distribución de Frecuencias

tdf_campo <- datos_limpios %>%
  group_by(`Producing Field`) %>%
  summarise(Fi = n(), .groups = 'drop') %>%
  arrange(desc(Fi)) %>%
  mutate(hi = Fi / sum(Fi), Pi = hi * 100, Fi_ac = cumsum(Fi), hi_ac = cumsum(hi))

tdf_campo %>%
  rename(`Campo Productor` = `Producing Field`, `Frec. Absoluta (Fi)` = Fi, `Frec. Relativa (hi)` = hi, 
         `Porcentaje (%)` = Pi, `Frec. Abs. Acumulada (Fi_ac)` = Fi_ac, `Frec. Rel. Acumulada (hi_ac)` = hi_ac) %>%
  head(15) %>% # Se limita a los 15 principales campos por legibilidad
  kbl(caption = "<center><b>TABLA 1. Distribución de Frecuencias de Pozos por Campo Productor (Top 15)</b></center>", 
      align = "lccccc", escape = FALSE) %>%
  kable_styling(bootstrap_options = c("hover", "striped"), full_width = TRUE, html_font = "Lora") %>%
  row_spec(0, background = "#1D4E73", color = "white", bold = TRUE) %>%
  footnote(general = "", general_title = "Fuente: Oil & Gas & Other Regulated Wells - Beginning 1860 ")
TABLA 1. Distribución de Frecuencias de Pozos por Campo Productor (Top 15)
Campo Productor Frec. Absoluta (Fi) Frec. Relativa (hi) Porcentaje (%) Frec. Abs. Acumulada (Fi_ac) Frec. Rel. Acumulada (hi_ac)
Richburg 11621 0.2788482 27.8848230 11621 0.2788482
Bradford 5698 0.1367247 13.6724655 17319 0.4155729
Lakeshore 5682 0.1363407 13.6340732 23001 0.5519136
Chipmunk 2929 0.0702819 7.0281944 25930 0.6221956
Beech Hill-Independence 1059 0.0254109 2.5410918 26989 0.6476065
Fulmer Valley 938 0.0225075 2.2507499 27927 0.6701140
Ford’s Brook 784 0.0188122 1.8812238 28711 0.6889262
Busti 774 0.0185723 1.8572286 29485 0.7074985
Alden-Lancaster 691 0.0165807 1.6580684 30176 0.7240792
Five Mile 604 0.0144931 1.4493101 30780 0.7385723
Four Mile 525 0.0125975 1.2597481 31305 0.7511698
Andover 496 0.0119016 1.1901620 31801 0.7630714
Brant-Eden 438 0.0105099 1.0509898 32239 0.7735813
Marsh 435 0.0104379 1.0437912 32674 0.7840192
West Auburn 352 0.0084463 0.8446311 33026 0.7924655
Fuente: Oil & Gas & Other Regulated Wells - Beginning 1860

5. Representación Gráfica

5.1 Gráfica N°1 — Diagrama de Barras (Frecuencia Absoluta)

grafico_data <- head(tdf_campo, 10)

ggplot(grafico_data, aes(x = reorder(`Producing Field`, -Fi), y = Fi, fill = `Producing Field`)) +
  geom_bar(stat = "identity", show.legend = FALSE) +
  geom_text(aes(label = Fi), vjust = -0.5, size = 6, family = "Lora") + 
  scale_fill_manual(values = paleta_azul) +
  theme_minimal() + 
  labs(title = "Gráfica N°1: Frecuencia Absoluta", x = "Campo Productor", y = "Frecuencia Absoluta (Fi)") +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", color = "#1D4E73", size = 26, family = "Lora"),
    axis.title = element_text(size = 22, family = "Lora"), 
    axis.text.x = element_text(angle = 45, hjust = 1, size = 16, family = "Lora"),
    axis.text.y = element_text(size = 16, family = "Lora")
  )

5.2. Gráfica N°2: Distribución Porcentual

ggplot(grafico_data, aes(x = reorder(`Producing Field`, -Pi), y = Pi, fill = `Producing Field`)) +
  geom_bar(stat = "identity", show.legend = FALSE) +
  geom_text(aes(label = paste0(round(Pi, 1), "%")), vjust = -0.5, size = 6, family = "Lora") + 
  scale_fill_manual(values = paleta_azul) +
  theme_minimal() + 
  labs(title = "Gráfica N°2: Distribución Porcentual", x = "Campo Productor", y = "Porcentaje (%)") +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", color = "#1D4E73", size = 26, family = "Lora"),
    axis.title = element_text(size = 22, family = "Lora"), 
    axis.text.x = element_text(angle = 45, hjust = 1, size = 16, family = "Lora"),
    axis.text.y = element_text(size = 16, family = "Lora")
  )

5.3. Gráfica N°3: Diagrama Circular

ggplot(grafico_data, aes(x = "", y = Pi, fill = `Producing Field`)) +
  geom_bar(stat = "identity", width = 1) +
  coord_polar("y", start = 0) +
  scale_fill_manual(values = paleta_azul) +
  theme_void() +
  labs(title = "Gráfica N°3: Distribución Porcentual") +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", color = "#1D4E73", size = 26, family = "Lora"),
    legend.text = element_text(size = 14, family = "Lora"),
    legend.title = element_text(size = 16, family = "Lora")
  )

6. Tabla de Indicadores

indicadores <- data.frame(
  Indicador = c("Total de Pozos", "Moda", "Porcentaje de la Moda"),
  Valor = c(comma(sum(tdf_campo$Fi)), 
            as.character(tdf_campo[["Producing Field"]][1]), 
            paste0(round(tdf_campo$Pi[1], 2), "%"))
)

indicadores %>%
  kbl(caption = "<center><b>TABLA 2. Indicadores Estadísticos</b></center>", align = "lc", escape = FALSE) %>%
  kable_styling(bootstrap_options = c("hover", "striped"), full_width = TRUE, html_font = "Lora") %>%
  row_spec(0, background = "#2870A4", color = "white", bold = TRUE) %>%
  footnote(general = "", general_title = "Autor: Jennifer Cordones ")
TABLA 2. Indicadores Estadísticos
Indicador Valor
Total de Pozos 41,675
Moda Richburg
Porcentaje de la Moda 27.88%
Autor: Jennifer Cordones

7. Conclusión

El análisis realizado sobre la variable PRODUCING FIELD permite destacar:

  • El campo Richburg es el de mayor actividad, concentrando el 27.9% de los pozos registrados.
  • La concentración de pozos en campos específicos refleja las zonas de mayor madurez y rentabilidad operativa dentro de la cuenca evaluada.