Para ejecutar el análisis estadístico sobre la extracción mundial de petróleo y gas, se cargan las librerías necesarias. dplyr permite filtrar y transformar los registros de producción, readxl habilita la lectura del dataset en formato Excel, mientras que knitr y kableExtra estructuran los resultados estadísticos de forma clara.
Se importa el dataset global de extracción de petróleo y gas, conformado por 49,212 registros de yacimientos y unidades productivas distribuidas en distintos países del mundo.
datos <- read_excel("dataset_mundial_petro.xlsx")
cat("Dimensiones del dataset:", nrow(datos), "filas y", ncol(datos), "columnas\n")## Dimensiones del dataset: 49212 filas y 32 columnas
Se selecciona la variable Discovery Year, que registra el año de descubrimiento de cada yacimiento extractivo. Tras eliminar valores ausentes se obtienen 4,935 registros válidos, con datos desde 1869 hasta 2023.
discovery_year <- as.numeric(datos$`Discovery year`)
discovery_year <- discovery_year[!is.na(discovery_year)]
cat("Total de registros válidos:", length(discovery_year), "\n")## Total de registros válidos: 4935
## Primeros 10 valores: 1949 2001 1966 1975 1984 1986 1981 2004 1981 1986
Se contabiliza el número de yacimientos petroleros y gasíferos por década, permitiendo identificar los periodos de mayor actividad exploratoria en la industria mundial de hidrocarburos.
conteo <- as.data.frame(table(discovery_year))
colnames(conteo) <- c("Año de Descubrimiento", "Frecuencia Absoluta")
cat("Total de años únicos registrados:", nrow(conteo), "\n")## Total de años únicos registrados: 125
cat("Año con más descubrimientos:", conteo[which.max(conteo$`Frecuencia Absoluta`), 1],
"con", max(conteo$`Frecuencia Absoluta`), "registros\n")## Año con más descubrimientos: 51 con 163 registros
Se construye la tabla de frecuencias agrupando los descubrimientos por décadas, mostrando frecuencia absoluta, relativa y acumulada ascendente y descendente, para analizar la evolución histórica de la exploración de petróleo y gas a nivel mundial.
# Agrupar por décadas
decada <- floor(discovery_year / 10) * 10
tabla_decadas <- as.data.frame(table(decada))
colnames(tabla_decadas) <- c("Década", "ni")
tabla_decadas <- tabla_decadas %>%
mutate(
`hi (%)` = paste0(round(ni / sum(ni) * 100, 2), "%"),
`Ni Asc` = cumsum(ni),
`Ni Dsc` = sum(ni) - cumsum(ni) + ni,
`Hi Asc` = paste0(round(cumsum(ni / sum(ni)) * 100, 2), "%"),
`Hi Dsc` = paste0(round((sum(ni) - cumsum(ni) + ni) / sum(ni) * 100, 2), "%")
)
kable(tabla_decadas, align = "c", caption = "Tabla de Frecuencias por Década — Discovery Year") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "bordered"),
full_width = FALSE,
position = "center") %>%
row_spec(0, bold = TRUE, background = "#d9d9d9", color = "black")| Década | ni | hi (%) | Ni Asc | Ni Dsc | Hi Asc | Hi Dsc |
|---|---|---|---|---|---|---|
| 1860 | 6 | 0.12% | 6 | 4935 | 0.12% | 100% |
| 1880 | 6 | 0.12% | 12 | 4929 | 0.24% | 99.88% |
| 1890 | 4 | 0.08% | 16 | 4923 | 0.32% | 99.76% |
| 1900 | 53 | 1.07% | 69 | 4919 | 1.4% | 99.68% |
| 1910 | 87 | 1.76% | 156 | 4866 | 3.16% | 98.6% |
| 1920 | 81 | 1.64% | 237 | 4779 | 4.8% | 96.84% |
| 1930 | 154 | 3.12% | 391 | 4698 | 7.92% | 95.2% |
| 1940 | 292 | 5.92% | 683 | 4544 | 13.84% | 92.08% |
| 1950 | 609 | 12.34% | 1292 | 4252 | 26.18% | 86.16% |
| 1960 | 667 | 13.52% | 1959 | 3643 | 39.7% | 73.82% |
| 1970 | 731 | 14.81% | 2690 | 2976 | 54.51% | 60.3% |
| 1980 | 619 | 12.54% | 3309 | 2245 | 67.05% | 45.49% |
| 1990 | 490 | 9.93% | 3799 | 1626 | 76.98% | 32.95% |
| 2000 | 591 | 11.98% | 4390 | 1136 | 88.96% | 23.02% |
| 2010 | 430 | 8.71% | 4820 | 545 | 97.67% | 11.04% |
| 2020 | 115 | 2.33% | 4935 | 115 | 100% | 2.33% |