Para ejecutar el análisis de regresión lineal sobre el dataset
mundial de petróleo y gas, se cargan las librerías necesarias.
dplyr permite filtrar y transformar los registros,
readxl habilita la lectura del dataset en formato Excel,
ggplot2 genera las gráficas del modelo, mientras que
knitr y kableExtra estructuran los resultados
en tablas 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 seleccionan las dos variables de análisis:
Discovery year (año de descubrimiento) como variable
independiente, y Production start year (año de inicio de
producción) como variable dependiente. Ambas son variables cuantitativas
discretas de escala de intervalo.
ADESC <- as.numeric(datos$`Discovery year`)
AINIP <- as.numeric(datos$`Production start year`)
cat("Registros con año de descubrimiento:", sum(!is.na(ADESC)), "\n")## Registros con año de descubrimiento: 4935
## Registros con año de inicio de producción: 1947
El criterio aplicado fue conservar únicamente los registros donde ambas variables sean válidas, no faltantes, dentro de un rango lógico posterior a 1900, y cuya brecha entre el año de descubrimiento y el año de inicio de producción se encuentre entre 1 y 15 años. Este criterio elimina yacimientos con tiempos de maduración atípicos (demasiado inmediatos o excesivamente largos) y permite trabajar con una muestra representativa, más limpia y estadísticamente coherente.
brecha <- AINIP - ADESC
validos <- !is.na(ADESC) & !is.na(AINIP) &
ADESC > 1900 & AINIP > 1900 &
brecha >= 1 & brecha <= 15
ADESC_filtrado <- ADESC[validos]
AINIP_filtrado <- AINIP[validos]
cat("Registros totales en el dataset: ", length(ADESC), "\n")## Registros totales en el dataset: 49212
## Registros válidos para el análisis: 1045
## Registros eliminados por el filtrado: 48167
## Brecha mínima considerada: 1 año | Brecha máxima considerada: 15 años
x_var <- ADESC_filtrado # Variable independiente (influye)
y_var <- AINIP_filtrado # Variable dependiente (recibe la influencia)
cat("Variable independiente (X): Año de Descubrimiento\n")## Variable independiente (X): Año de Descubrimiento
## Variable dependiente (Y): Año de Inicio de Producción
## Rango de X: 1905 - 2021
## Rango de Y: 1913 - 2024
## Total de observaciones para el modelo: 1045
Se construye el diagrama de dispersión entre el año de descubrimiento y el año de inicio de producción para observar la forma general de la relación entre ambas variables antes de proponer el modelo de regresión.
ggplot(data.frame(x = x_var, y = y_var), aes(x = x, y = y)) +
geom_point(color = "#2980b9", shape = 7, alpha = 0.6, size = 2) +
labs(
title = "Gráfica N°1: Diagrama de dispersión del año de inicio de producción\nen función del año de descubrimiento de yacimientos",
x = "Año de Descubrimiento",
y = "Año de Inicio de Producción",
caption = "Fuente: Dataset Mundial de Petróleo y Gas | Filtro: brecha entre 1 y 15 años"
) +
theme_minimal(base_size = 12) +
theme(plot.title = element_text(face = "bold", hjust = 0.5))Análisis del gráfico: al aplicar el filtro de brecha entre 1 y 15 años, la nube de puntos se muestra más ordenada y concentrada, revelando una tendencia positiva clara: a medida que el año de descubrimiento avanza, el año de inicio de producción también lo hace de forma proporcional. La distribución lineal ascendente de los puntos justifica la conjetura de un modelo de regresión lineal.
Con base en la forma lineal observada en el diagrama de dispersión, se propone un modelo de regresión lineal simple de la forma:
y = b + m · x
##
## Call:
## lm(formula = y_var ~ x_var)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5.6372 -3.5961 -0.6214 2.3995 8.4077
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 5.36087 12.36873 0.433 0.665
## x_var 1.00063 0.00622 160.872 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3.899 on 1043 degrees of freedom
## Multiple R-squared: 0.9613, Adjusted R-squared: 0.9612
## F-statistic: 2.588e+04 on 1 and 1043 DF, p-value: < 2.2e-16
ggplot(data.frame(x = x_var, y = y_var), aes(x = x, y = y)) +
geom_point(color = "#2980b9", shape = 7, alpha = 0.6, size = 2) +
geom_smooth(method = "lm", color = "red", se = FALSE, linewidth = 1.2) +
labs(
title = "Gráfica N°2: Modelo de regresión lineal entre el año de
descubrimiento y el año de inicio de producción",
x = "Año de Descubrimiento",
y = "Año de Inicio de Producción",
caption = "Fuente: Dataset Mundial de Petróleo y Gas | Filtro: brecha entre 1 y 15 años"
) +
theme_minimal(base_size = 12) +
theme(plot.title = element_text(face = "bold", hjust = 0.5))El coeficiente de correlación de Pearson indica el grado de asociación lineal entre ambas variables. Un valor cercano a ±1 representa una relación fuerte, mientras que valores cercanos a 0 indican una relación débil.
r <- cor(x_var, y_var) * 100
cat("La correlación lineal entre ambas variables es:", round(r, 2), "%\n")## La correlación lineal entre ambas variables es: 98.04 %
El coeficiente de determinación expresa la proporción de la variación total de la variable dependiente que es explicada por la variable independiente. Se interpreta como el grado de ajuste del modelo a los datos observados.
r2 <- ((r / 100)^2) * 100
cat("El porcentaje de la variación del año de inicio de producción\nexplicado por el año de descubrimiento es de:", round(r2, 2), "%\n")## El porcentaje de la variación del año de inicio de producción
## explicado por el año de descubrimiento es de: 96.13 %
Para obtener la ecuación de la regresión lineal, se utilizan los coeficientes estimados del modelo, los cuales permiten expresar la relación entre las variables mediante la siguiente forma general:
y = m·x + b
Donde:
## El intercepto es: 5.361
## La pendiente es: 1.0006
## La ecuación de la recta obtenida es: y = 5.361 + 1.0006 * x
La ecuación del modelo lineal obtenida del año de inicio de producción en función del año de descubrimiento es:
y = 5.36 + 1.0006 · x
Donde:
Este modelo presenta restricciones asociadas al rango de datos utilizados para su ajuste, ya que fue construido únicamente con observaciones que cumplen con los criterios:
## Rango válido del modelo:
## Año de Descubrimiento (X): 1905 — 2021
## Año de Inicio de Producción (Y): 1913 — 2024
## Brecha mínima: 1 año | Brecha máxima: 15 años
##
## Cualquier predicción fuera de este rango constituye una extrapolación
## y no describe de forma confiable el comportamiento real del sistema.
Por lo tanto, su validez se limita estrictamente a este intervalo. El intercepto no debe interpretarse literalmente, ya que carece de significado físico fuera del rango de años analizado.
Tabla_resumen <- data.frame(
`Variable Independiente` = "Año de Descubrimiento",
`Variable Dependiente` = "Año de Inicio de Producción",
`Test Pearson` = round(r, 2),
`Coeficiente de determinación` = round(r2, 2),
`Ecuación de la recta` = paste0("y = ", round(b, 2), " + ", round(m, 4), " * x"),
check.names = FALSE
)
kable(Tabla_resumen, align = "c",
caption = "Tabla N°2: Resumen del modelo de regresión lineal del año de inicio
de producción en función del año de descubrimiento de yacimientos de hidrocarburos") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "bordered"),
full_width = FALSE,
position = "center") %>%
row_spec(0, bold = TRUE, background = "#d9d9d9", color = "black")| Variable Independiente | Variable Dependiente | Test Pearson | Coeficiente de determinación | Ecuación de la recta |
|---|---|---|---|---|
| Año de Descubrimiento | Año de Inicio de Producción | 98.04 | 96.13 | y = 5.36 + 1.0006 * x |
¿Cuál sería el año estimado de inicio de producción si el yacimiento fue descubierto en el año 2005?
x_pred <- 2005
y_esperado <- m * x_pred + b
cat("Para un yacimiento descubierto en el año", x_pred,
", el año estimado de inicio de producción es:",
round(y_esperado, 0), "\n")## Para un yacimiento descubierto en el año 2005 , el año estimado de inicio de producción es: 2012
El modelo de regresión lineal ajustado unicamente con registros de 1 y 15 años, entre el año de descubrimiento y el año de inicio de producción muestra una correlación de Pearson de 98.04% y un coeficiente de determinación de 96.13%, lo que indica un ajuste lineal muy fuerte. La ecuación obtenida es y = -45.32 + 1.0226·x, confirmando que a yacimientos descubiertos en años más recientes les corresponde también un inicio de producción más reciente.