#==============================ENCABEZADO===================
# TEMA: ESTADÍSTICA DESCRIPTIVA - INICIO DE PERFORACION
# AUTOR: GRUPO 3
# FECHA: 03-2026
#===========================================================
library(dplyr)
library(e1071)
library(gt)
setwd("C:/Users/HP/Documents/PROYECTO ESTADISTICA/RStudio")
datos <- read.csv("tablap.csv", header = TRUE, dec = ",", sep = ";")
Asignamos nuestra variable Spud.Initiation.year(Año de Inicio de Perforación) con el nombre de inicio
inicio <- datos$Spud.Initiation.year
TABLA DE DISTRIBUCIÓN ORIGINAL
ni_orig <- table(na.omit(inicio))
total_datos_orig <- sum(ni_orig)
hi_orig <- round(as.numeric(ni_orig) / total_datos_orig * 100, 2)
TDF_Original <- data.frame(
Valor = names(ni_orig),
ni = as.numeric(ni_orig),
hi = hi_orig
)
TDF_Final_Original <- rbind(
TDF_Original,
data.frame(Valor = "TOTAL", ni = total_datos_orig, hi = 100)
)
| Tabla N° 1. Tabla de distribución de cantidad del año de inicio de perforación de los pozos de gas natural en Nuevo México | ||
| Valor | ni | hi |
|---|---|---|
| 1950 | 24 | 0.19 |
| 1951 | 71 | 0.57 |
| 1952 | 79 | 0.63 |
| 1953 | 107 | 0.85 |
| 1954 | 70 | 0.56 |
| 1955 | 162 | 1.29 |
| 1956 | 170 | 1.35 |
| 1957 | 157 | 1.25 |
| 1958 | 140 | 1.11 |
| 1959 | 150 | 1.19 |
| 1960 | 108 | 0.86 |
| 1961 | 105 | 0.84 |
| 1962 | 125 | 1.00 |
| 1963 | 61 | 0.49 |
| 1964 | 81 | 0.64 |
| 1965 | 97 | 0.77 |
| 1966 | 90 | 0.72 |
| 1967 | 66 | 0.53 |
| 1968 | 60 | 0.48 |
| 1969 | 80 | 0.64 |
| 1970 | 34 | 0.27 |
| 1971 | 55 | 0.44 |
| 1972 | 82 | 0.65 |
| 1973 | 122 | 0.97 |
| 1974 | 99 | 0.79 |
| 1975 | 132 | 1.05 |
| 1976 | 138 | 1.10 |
| 1977 | 257 | 2.05 |
| 1978 | 244 | 1.94 |
| 1979 | 253 | 2.01 |
| 1980 | 374 | 2.98 |
| 1981 | 323 | 2.57 |
| 1982 | 264 | 2.10 |
| 1983 | 151 | 1.20 |
| 1984 | 125 | 1.00 |
| 1985 | 210 | 1.67 |
| 1986 | 45 | 0.36 |
| 1987 | 52 | 0.41 |
| 1988 | 83 | 0.66 |
| 1989 | 114 | 0.91 |
| 1990 | 279 | 2.22 |
| 1991 | 72 | 0.57 |
| 1992 | 137 | 1.09 |
| 1993 | 104 | 0.83 |
| 1994 | 145 | 1.15 |
| 1995 | 106 | 0.84 |
| 1996 | 114 | 0.91 |
| 1997 | 178 | 1.42 |
| 1998 | 265 | 2.11 |
| 1999 | 287 | 2.28 |
| 2000 | 466 | 3.71 |
| 2001 | 518 | 4.12 |
| 2002 | 449 | 3.57 |
| 2003 | 529 | 4.21 |
| 2004 | 591 | 4.71 |
| 2005 | 720 | 5.73 |
| 2006 | 744 | 5.92 |
| 2007 | 613 | 4.88 |
| 2008 | 441 | 3.51 |
| 2009 | 152 | 1.21 |
| 2010 | 84 | 0.67 |
| 2011 | 137 | 1.09 |
| 2012 | 53 | 0.42 |
| 2013 | 32 | 0.25 |
| 2014 | 18 | 0.14 |
| 2015 | 16 | 0.13 |
| 2016 | 26 | 0.21 |
| 2017 | 38 | 0.30 |
| 2018 | 37 | 0.29 |
| 2019 | 36 | 0.29 |
| 2020 | 14 | 0.11 |
| TOTAL | 12561 | 100.00 |
| Tabla 1 de 4 | ||
TABLA DE DISTRIBUCIÓN CON STURGES
Debido a la gran cantidad de filas presentes en la tabla original, se hizo uso de la regla de Sturges.
n_inicio <- length(na.omit(inicio))
k_sturges_inicio <- 1 + (3.322 * log10(n_inicio))
k_sturges_inicio
## [1] 14.61696
clasificacion_sturges_inicio <- cut(inicio, breaks = k_sturges_inicio, right = FALSE)
# Calculos de frecuencias para Sturges
ni_sturges_inicio <- table(clasificacion_sturges_inicio)
total_datos_sturges_inicio <- sum(ni_sturges_inicio)
hi_sturges_inicio <- round(as.numeric(ni_sturges_inicio) / total_datos_sturges_inicio * 100, 2)
| Tabla N°2. Tabla de distribución del año de inicio de perforación de los pozos de gas natural en Nuevo México | ||
| Intervalo | ni | hi |
|---|---|---|
| [1950 - 1955) | 351 | 2.79 |
| [1955 - 1960) | 779 | 6.20 |
| [1960 - 1965) | 480 | 3.82 |
| [1965 - 1970) | 393 | 3.13 |
| [1970 - 1975) | 392 | 3.12 |
| [1975 - 1980) | 1024 | 8.15 |
| [1980 - 1985) | 1237 | 9.85 |
| [1985 - 1990) | 504 | 4.01 |
| [1990 - 1995) | 737 | 5.87 |
| [1995 - 2000) | 950 | 7.56 |
| [2000 - 2005) | 2553 | 20.32 |
| [2005 - 2010) | 2670 | 21.26 |
| [2010 - 2015) | 324 | 2.58 |
| [2015 - 2020) | 167 | 1.33 |
| TOTAL | 12561 | 100.00 |
| Tabla 2 de 4 | ||
TABLA DE DISTRIBUCIÓN AGRUPADA
Debido a que Sturges genera muchos intervalos, se procedió a agrupar los datos en intervalos prácticos.
inicio <- datos$Spud.Initiation.year
# CLASIFICACION CON BUCLE FOR
clasificacion <- character(length(inicio))
for(i in seq_along(inicio)){
if(inicio[i] >= 1950 & inicio[i] < 1960){
clasificacion[i] <- "1950-1959"
} else if(inicio[i] >= 1960 & inicio[i] < 1970){
clasificacion[i] <- "1960-1969"
} else if(inicio[i] >= 1970 & inicio[i] < 1980){
clasificacion[i] <- "1970-1979"
} else if(inicio[i] >= 1980 & inicio[i] < 1990){
clasificacion[i] <- "1980-1989"
} else if(inicio[i] >= 1990 & inicio[i] < 2000){
clasificacion[i] <- "1990-1999"
} else if(inicio[i] >= 2000 & inicio[i] < 2010){
clasificacion[i] <- "2000-2009"
} else if(inicio[i] >= 2010 & inicio[i] < 2020){
clasificacion[i] <- "2010-2019"
} else if(inicio[i] >= 2020 & inicio[i] <= 2030){
clasificacion[i] <- "2020-2029"
} else {
clasificacion[i] <- NA
}
}
clasificacion <- na.omit(clasificacion)
orden_intervalos <- c("1950-1959", "1960-1969", "1970-1979", "1980-1989",
"1990-1999", "2000-2009", "2010-2019", "2020-2029")
clasificacion <- factor(clasificacion, levels = orden_intervalos)
# CÁLCULO DE FRECUENCIAS
ni <- table(clasificacion)
total_datos <- sum(ni)
hi <- round(as.numeric(ni) / total_datos * 100, 2)
Ni_asc <- cumsum(ni)
Hi_asc <- cumsum(hi)
Ni_des <- rev(cumsum(rev(ni)))
Hi_des <- rev(cumsum(rev(hi)))
# TABLA DE DISTRIBUCIÓN DE FRECUENCIAS
tabla_base <- data.frame(Intervalo = orden_intervalos, ni = as.numeric(ni), hi = hi,
Ni_asc = as.numeric(Ni_asc), Hi_asc = round(Hi_asc, 2),
Ni_des = as.numeric(Ni_des), Hi_des = round(Hi_des, 2))
fila_total <- data.frame(Intervalo = "TOTAL", ni = total_datos, hi = 100,
Ni_asc = NA, Hi_asc = NA, Ni_des = NA, Hi_des = NA)
TDF_Final_gt <- rbind(tabla_base, fila_total)
| Tabla N°3. Distribución de cantidad del año de inicio de perforación de los pozos de gas natural en Nuevo México | ||||||
| Intervalo | ni | hi | Ni_asc | Hi_asc | Ni_des | Hi_des |
|---|---|---|---|---|---|---|
| 1950-1959 | 1130 | 9.00 | 1130 | 9.00 | 12561 | 100.00 |
| 1960-1969 | 873 | 6.95 | 2003 | 15.95 | 11431 | 91.00 |
| 1970-1979 | 1416 | 11.27 | 3419 | 27.22 | 10558 | 84.05 |
| 1980-1989 | 1741 | 13.86 | 5160 | 41.08 | 9142 | 72.78 |
| 1990-1999 | 1687 | 13.43 | 6847 | 54.51 | 7401 | 58.92 |
| 2000-2009 | 5223 | 41.58 | 12070 | 96.09 | 5714 | 45.49 |
| 2010-2019 | 477 | 3.80 | 12547 | 99.89 | 491 | 3.91 |
| 2020-2029 | 14 | 0.11 | 12561 | 100.00 | 14 | 0.11 |
| TOTAL | 12561 | 100.00 | ||||
| Tabla 3 de 4 | ||||||
par(oma = c(1, 1, 1, 1))
#Gráfica 1
par(mar = c(7, 4, 4, 2) + 0.1)
barplot(ni, names.arg = orden_intervalos, las = 2, col = "skyblue",
xlab = "", ylab = "Cantidad (ni)",
main = "Gráfica Nº 1: Distribución de cantidad de los años de\ninicio de perforación de los pozos de gas natural\nen Nuevo México")
box(which = "outer", col = "black")
mtext("Inicio de perforación (años)", side = 1, line = 5.5, cex = 1)
#Gráfica 2
par(mar = c(7, 4, 4, 2) + 0.1)
barplot(ni, names.arg = orden_intervalos, las = 2, col = "darkgrey",
xlab = "", ylab = "Cantidad (ni)",
ylim = c(0, total_datos),
main = "Gráfica Nº 2: Distribución de cantidad de los años de
inicio de perforación de los pozos de gas natural
en Nuevo México")
box(which = "outer", col = "black")
mtext("Inicio de perforación (años)", side = 1, line = 5.5, cex = 1)
#Gráfica 3
par(mar = c(7, 4, 4, 2) + 0.1)
barplot(hi, names.arg = orden_intervalos, las = 2, col = "lightgreen",
xlab = "", ylab = "Porcentaje (%)",
main = "Gráfica Nº 3: Distribución de cantidad en porcentaje de los años
de inicio de perforación de los pozos de gas natural
en Nuevo México")
box(which = "outer", col = "black")
mtext("Inicio de perforación (años)", side = 1, line = 5.5, cex = 1)
#Gráfica 4
par(mar = c(7, 4, 4, 2) + 0.1)
barplot(hi, names.arg = orden_intervalos, las = 2, col = "grey50",
ylim = c(0, 100),
xlab = "", ylab = "Porcentaje (%)",
main = "Gráfica Nº 4: Distribución de cantidad en
porcentaje de los años de inicio de perforación de los pozos
de gas natural en Nuevo México")
box(which = "outer", col = "black")
mtext("Inicio de perforación (años)", side = 1, line = 5.5, cex = 1)
#Gráfica 5
par(mar = c(7, 4, 4, 2) + 0.1)
posicion_x <- 1:length(ni)
plot(posicion_x, Ni_asc, type = "o", pch = 1, col = "blue",
xaxt = "n",
xlab = "",
ylab = "Cantidad acumulada (Ni)",
main = "Gráfica Nº 5: Ojiva combinada de los años de
inicio de perforación")
axis(1, at = posicion_x, labels = orden_intervalos, las = 2,
cex.axis = 0.7)
lines(posicion_x, Ni_des, type = "o", pch = 1, col = "red")
box(which = "outer", col = "black")
mtext("Inicio de perforación (años)", side = 1, line = 5.5, cex = 1)
#Gráfica 6
par(mar = c(7, 4, 4, 2) + 0.1)
plot(posicion_x, Hi_asc, type = "o", pch = 1, col = "blue",
xaxt = "n", ylim = c(0, 100),
xlab = "",
ylab = "Porcentaje acumulado (Hi)",
main = "Gráfica Nº 6: Ojiva combinada de los años de
inicio de perforación")
axis(1, at = posicion_x, labels = orden_intervalos, las = 2, cex.axis = 0.7)
lines(posicion_x, Hi_des, type = "o", pch = 1, col = "red")
box(which = "outer", col = "black")
mtext("Inicio de perforación (años)", side = 1, line = 5.5, cex = 1)
#Gráfica 7
#BOXPLOT
boxplot(inicio, horizontal = TRUE, col = "lightblue",
xlab = "Inicio de perforación (años)",
main = "Gráfica Nº 7: Distribución de cantidad de los años de inicio
de perforación de los pozos de gas natural en Nuevo México")
box(which = "outer", col = "black")
summary(inicio)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1950 1978 1997 1990 2005 2020
#media
media_x <- mean(inicio, na.rm = TRUE)
media_x
## [1] 1990.086
#mínimo
val_min <- min(inicio, na.rm = TRUE)
val_min
## [1] 1950
#máximo
val_max <- max(inicio, na.rm = TRUE)
val_max
## [1] 2020
#mediana
mediana_Me <- median(inicio, na.rm = TRUE)
mediana_Me
## [1] 1997
#desviación estándar
desv_estandar <- sd(inicio, na.rm = TRUE)
desv_estandar
## [1] 17.32853
#coeficiente de variación
coef_variacion <- ((desv_estandar / media_x) * 100)
coef_variacion
## [1] 0.8707429
#asimetría
asimetria_As <- skewness(inicio, na.rm = TRUE)
asimetria_As
## [1] -0.6891418
#curtosis
curtosis_K <- kurtosis(inicio, na.rm = TRUE)
curtosis_K
## [1] -0.7097994
# Tabla de Indicadores Estadísticos
Variable_Nombre <- "Año de inicio"
TablaIndicadores <- data.frame(Variable = Variable_Nombre,
mínimo = val_min,
máximo = val_max,
x = round(media_x, 0),
Me = mediana_Me,
sd = round(desv_estandar, 2),
Cv = round(coef_variacion, 2),
As = round(asimetria_As, 2),
K = round(curtosis_K, 2))
| Indicadores estadísticos de la variable Año de Inicio de Perforación | ||||||||
| Variable | mínimo | máximo | x | Me | sd | Cv | As | K |
|---|---|---|---|---|---|---|---|---|
| Año de inicio | 1950 | 2020 | 1990 | 1997 | 17.33 | 0.87 | -0.69 | -0.71 |
| Tabla 3 de 4 | ||||||||
valores_atipicos <- boxplot.stats(inicio)$out
n_atipicos <- length(valores_atipicos)
if(n_atipicos > 0) {
min_atipico <- min(valores_atipicos)
max_atipico <- max(valores_atipicos)
} else {
min_atipico <- 0
max_atipico <- 0
}
TablaOutliers <- data.frame(Outliers = n_atipicos, Mínimo = min_atipico, Máximo = max_atipico)
| Tabla N°4: Outliers de la variable año de inicio de perforación | ||
| Outliers | Mínimo | Máximo |
|---|---|---|
| 0 | 0 | 0 |
| Tabla 4 de 4 | ||
La variable año de inicio presenta valores que fluctúan entre 1950 y 2020, con una concentración en torno a la mediana de 1997. La desviación estándar de 17.33 indica que se trata de un conjunto con una dispersión moderada y una marcada asimetría a la izquierda, respaldada por la total ausencia de valores atípicos. La acumulación de registros se encuentra en la parte alta de la variable, lo que evidencia que la gran mayoría de los inicios de perforación se realizaron en periodos recientes (particularmente el auge observado entre 2000 y 2009). Por todo lo anterior mencionado, el comportamiento de la variable es medianamente beneficioso, debido a que los registros modernos cuentan con información geológica más confiable y mejor documentada.