ANÁLISIS ESTADÍSTICO

1. CARGA DE LIBRERÍAS Y DATOS

                    #==============================ENCABEZADO===================
                    # TEMA: ESTADÍSTICA DESCRIPTIVA - VIDA ESTIMADA
                    # AUTOR: GRUPO 3
                    # FECHA: 03-2026
                    #===========================================================
library(gt)
library(dplyr)
library(e1071)
setwd("C:/Users/HP/Documents/PROYECTO ESTADISTICA/RStudio")
datos <- read.csv("tablap.csv", header = TRUE, dec = ",", sep = ";")

2. SELECCIÓN DE VARIABLE

Asignamos nuestra variable Estimated.lifetime (Vida Estimada) con el nombre de vida_util

vida_util <- datos$Estimated.lifetime

3. TABLA DE DISTRIBUCIÓN DE CANTIDAD

TABLA DE DISTRIBUCIÓN ORIGINAL

ni_orig <- table(na.omit(vida_util))
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 de la vida útil estimada de los pozos de gas natural en Nuevo México
Valor ni hi
25 178 1.42
50 10209 81.28
51 82 0.65
52 55 0.44
53 34 0.27
54 80 0.64
55 60 0.48
56 66 0.53
57 90 0.72
58 97 0.77
59 81 0.64
60 61 0.49
61 125 1.00
62 105 0.84
63 108 0.86
64 150 1.19
65 140 1.11
66 157 1.25
67 170 1.35
68 162 1.29
69 70 0.56
70 107 0.85
71 79 0.63
72 71 0.57
73 24 0.19
TOTAL 12561 100.00
Tabla 1 de 3

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 <- length(na.omit(vida_util))
k_sturges <- 1 + (3.322 * log10(n))
k_sturges
## [1] 14.61696
clasificacion_sturges <- cut(vida_util, breaks = k_sturges, right = FALSE)

# Cálculos de frecuencias para Sturges
ni_sturges <- table(clasificacion_sturges)
total_datos_sturges <- sum(ni_sturges)
hi_sturges <- round(as.numeric(ni_sturges) / total_datos_sturges * 100, 2) 
Tabla N° 2. Tabla de distribución de cantidad de la vida útil estimada de los pozos de gas natural en Nuevo México
Intervalo ni hi
[25-28.4) 178 1.42
[28.4-31.9) 0 0.00
[31.9-35.3) 0 0.00
[35.3-38.7) 0 0.00
[38.7-42.1) 0 0.00
[42.1-45.6) 0 0.00
[45.6-49) 0 0.00
[49-52.4) 10346 82.37
[52.4-55.9) 174 1.39
[55.9-59.3) 334 2.66
[59.3-62.7) 291 2.32
[62.7-66.1) 555 4.42
[66.1-69.6) 402 3.20
[69.6-73) 281 2.24
TOTAL 12561 100.00
Tabla 2 de 3

TABLA DE DISTRIBUCIÓN AGRUPADA

Debido a los valores decimales resultantes de aplicar la regla de Sturges, se procedió a agrupar los datos en intervalos prácticos.

min_val <- 25
max_val <- ceiling(max(vida_util, na.rm = TRUE) / 10) * 10

limites <- seq(min_val, max_val, by = 10)
k_int <- length(limites) - 1

orden_intervalos <- character(k_int)
for(i in 1:k_int) {
  orden_intervalos[i] <- paste0(limites[i], "-", limites[i+1] - 1)
}

clasificacion <- character(length(vida_util))

for(i in seq_along(vida_util)){
  if(!is.na(vida_util[i])){
    asignado <- FALSE
    for(j in 1:k_int) {
      if(vida_util[i] >= limites[j] && vida_util[i] < limites[j+1]) {
        clasificacion[i] <- orden_intervalos[j]
        asignado <- TRUE
        break
      }
    }
    if(!asignado && vida_util[i] == limites[k_int + 1]) {
      clasificacion[i] <- orden_intervalos[k_int]
    } else if(!asignado) {
      clasificacion[i] <- NA
    }
  } else {
    clasificacion[i] <- NA
  }
}

clasificacion <- na.omit(clasificacion)
clasificacion <- factor(clasificacion, levels = orden_intervalos)

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 N° 3. Tabla de distribución de cantidad de la vida útil estimada de los pozos de gas natural en Nuevo México
Intervalo ni hi Ni_asc Hi_asc Ni_des Hi_des
25-34 178 1.42 178 1.42 12561 100
35-44 0 0.00 178 1.42 12383 98.58
45-54 10460 83.27 10638 84.69 12383 98.58
55-64 943 7.51 11581 92.2 1923 15.31
65-74 980 7.80 12561 100 980 7.8
TOTAL 12561 100.00
Tabla 3 de 3

4. GRÁFICAS DE DISTRIBUCIÓN DE CANTIDAD

color_abs <- "#76D7C4" 
color_rel <- "#F1948A" 
par(oma = c(1, 1, 1, 1))
par(mfrow=c(1,1))

#Gráfica 1: Absoluta local
barplot(ni, names.arg = orden_intervalos, las = 2, col = color_abs, 
        xlab = "Vida Útil Estimada (años)", ylab = "Cantidad (ni)",
        main = "Gráfica N° 1: Distribución de cantidad de la vida útil estimada
        de los pozos de gas natural en Nuevo México")
box(which = "outer", col = "black")

#Gráfica 2: Absoluta global
barplot(ni, names.arg = orden_intervalos, las = 2, col = "darkgrey", 
        ylim = c(0, total_datos), xlab = "Vida útil estimada (años)", ylab = "Cantidad (ni)",
        main = "Gráfica N° 2: Distribución de cantidad de la vida útil estimada
        de los pozos de gas natural en Nuevo México")
box(which = "outer", col = "black")

#Gráfica 3: Relativa local
barplot(hi, names.arg = orden_intervalos, las = 2, col = color_rel, 
        xlab = "Vida útil estimada (años)", ylab = "Porcentaje (%)",
        main = "Gráfica N° 3: Distribución de cantidad en porcentaje de 
        la vida útil estimada de los pozos de gas natural en 
        Nuevo México")
box(which = "outer", col = "black")

#Gráfica 4: Relativa global
barplot(hi, names.arg = orden_intervalos, las = 2, col = "grey50", 
        ylim = c(0, 100), xlab = "Vida útil estimada (años)", ylab = "Porcentaje (%)",
        main = "Gráfica N° 4: Distribución de cantidad en porcentaje de la vida
        útil estimada de los pozos de gas natural en Nuevo México")
posicion_x <- 1:length(ni)
box(which = "outer", col = "black")

#Gráfica 5: Ojivas Ni
plot(posicion_x, Ni_asc, type = "o", pch = 1, col = "blue", xaxt = "n", 
     xlab = "Vida útil estimada (años)", ylab = "Cantidad acumulada (Ni)",
     main = "Gráfica N° 5: Ojivas combinadas de la vida útil estimada")
axis(1, at = posicion_x, labels = orden_intervalos, las = 2)
lines(posicion_x, Ni_des, type = "o", pch = 1, col = "red")
legend("right", legend = c("Ascendente", "Descendente"), col = c("blue", "red"), pch = c(1, 1), bty = "n")
box(which = "outer", col = "black")

#Gráfica 6: Ojivas Hi
plot(posicion_x, Hi_asc, type = "o", pch = 1, col = "blue", xaxt = "n", ylim = c(0, 100), 
     xlab = "Vida útil estimada (años)", ylab = "Porcentaje acumulado (Hi)",
     main = "Gráfica N° 6: Ojivas combinadas de la vida útil estimada")
axis(1, at = posicion_x, labels = orden_intervalos, las = 2)
lines(posicion_x, Hi_des, type = "o", pch = 1, col = "red")
legend("right", legend = c("Ascendente", "Descendente"), col = c("blue", "red"), pch = c(1, 1), bty = "n")
box(which = "outer", col = "black")

#Gráfica 7: Boxplot
boxplot(vida_util, horizontal = TRUE, col = "lightblue", 
        xlab = "Vida útil estimada (años)", main = "Gráfica N° 7: Distribución de cantidad de la vida útil
        estimada de los pozos de gas natural en Nuevo México")
box(which = "outer", col = "black")

summary(vida_util)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   25.00   50.00   50.00   51.86   50.00   73.00

5. INDICADORES ESTADÍSTICOS

#media
media_x <- mean(vida_util, na.rm = TRUE)
media_x
## [1] 51.86331
#mínimo
val_min <- min(vida_util, na.rm = TRUE)
val_min
## [1] 25
#máximo
val_max <- max(vida_util, na.rm = TRUE)
val_max
## [1] 73
#mediana
mediana_Me <- median(vida_util, na.rm = TRUE)
mediana_Me
## [1] 50
#desviación estándar
desv_estandar <- sd(vida_util, na.rm = TRUE)
desv_estandar
## [1] 6.295903
#coeficiente
coef_variacion <- ((desv_estandar / media_x) * 100)
coef_variacion
## [1] 12.13942
#asimetría
asimetria_As <- skewness(vida_util, na.rm = TRUE)
asimetria_As
## [1] 0.5076765
#curtosis
curtosis_K <- kurtosis(vida_util, na.rm = TRUE)
curtosis_K
## [1] 5.8894
TablaIndicadores <- data.frame(Variable = "Vida Útil Estimada", mínimo = val_min, máximo = val_max, x = round(media_x, 2), 
                               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 Vida Útil Estimada
Variable mínimo máximo x Me sd Cv As K
Vida Útil Estimada 25 73 51.86 50 6.3 12.14 0.51 5.89
Tabla 3 de 4
valores_atipicos <- boxplot.stats(vida_util)$out 
n_atipicos <- length(valores_atipicos) 
min_atipico <- if(n_atipicos > 0) min(valores_atipicos) else 0
max_atipico <- if(n_atipicos > 0) max(valores_atipicos) else 0

TablaOutliers <- data.frame(Outliers = n_atipicos, Minimo = min_atipico, Maximo = max_atipico)
Tabla N°4. Outliers de la variable vida útil estimada de los pozos de gas natural en Nuevo México
Outliers Minimo Maximo
2352 25 73
Tabla 4 de 4

6.CONCLUSIÓN

La variable vida útil estimada presenta valores que fluctúan entre 25 y 73, con una concentración en torno a la mediana de 50. La desviación estándar de 6.3 indica que se trata de un conjunto homogéneo, a pesar de la presencia de 2352 valores atípicos ubicados en el extremo derecho de la distribución. Esta concentración central evidencia que más del 80% de los pozos proyectan una vida útil en torno a los 50 años, un comportamiento altamente beneficioso ya que una mayor longevidad optimiza la producción.