Este análisis estadístico examina la distribución de los diferentes tipos de pozos en el Campo Sacha, clasificándolos según su nomenclatura y analizando su frecuencia de producción.
library(readxl)
library(dplyr)
# Cargar dataset de producción
Produccio_n_Campo_Sacha_csv <- read_excel("Producción Campo Sacha.csv.xlsx")
# Extraer variable Pozo
Pozo <- Produccio_n_Campo_Sacha_csv$Pozo
# Tabla de frecuencias absolutas
TDF_Pozo <- table(Pozo)
tabla_Pozo <- as.data.frame(TDF_Pozo)
# Cálculo de frecuencias relativas y porcentajes
hi <- tabla_Pozo$Freq/sum(tabla_Pozo$Freq)
hi_porc <- hi*100
tabla_Pozo <- data.frame(tabla_Pozo, hi_porc)
# Clasificación de pozos por tipo
tabla_Pozo$Tipo_Pozo <- case_when(
grepl("A$", tabla_Pozo$Pozo) ~ "Tipo A",
grepl("B$", tabla_Pozo$Pozo) ~ "Tipo B",
grepl("D$", tabla_Pozo$Pozo) ~ "Tipo D",
grepl("H$", tabla_Pozo$Pozo) ~ "Tipo H",
grepl("RE", tabla_Pozo$Pozo) ~ "Reentrada",
grepl("^SACHA-\\d+$", tabla_Pozo$Pozo) ~ "Numéricos",
TRUE ~ "Otros Tipos"
)
tabla_resumen_Pozo <- tabla_Pozo %>%
group_by(Tipo_Pozo) %>%
summarise(
Frecuencia = sum(Freq),
Porcentaje = sum(hi_porc)
) %>%
arrange(desc(Frecuencia))
colnames(tabla_resumen_Pozo) <- c("Tipo_Pozo", "ni", "hi (%)")
print(tabla_resumen_Pozo)
## # A tibble: 7 × 3
## Tipo_Pozo ni `hi (%)`
## <chr> <int> <dbl>
## 1 Tipo D 3154 37.8
## 2 Numéricos 2302 27.6
## 3 Tipo A 1759 21.1
## 4 Tipo H 470 5.63
## 5 Reentrada 331 3.97
## 6 Otros Tipos 209 2.50
## 7 Tipo B 119 1.43
valores_reales <- tabla_resumen_Pozo$ni
names(valores_reales) <- tabla_resumen_Pozo$Tipo_Pozo
barplot(valores_reales,
main = "Gráfica Nº1: Distribución de Tipos de Pozos",
xlab = "", ylab = "Días de Producción",
col = "#FF6B6B", border = "white",
cex.names = 0.7, las = 2)
mtext("Tipo de Pozo", side = 1, line = 4)
top_pozos_reales <- head(tabla_resumen_Pozo, 10)
valores <- top_pozos_reales$ni
names(valores) <- top_pozos_reales$Tipo_Pozo
barplot(valores,
main = "Gráfica Nº2: Top 10 Tipos de Pozos",
xlab = "", ylab = "Días de Producción",
col = "#FF6B6B", border = "white",
cex.names = 0.7, las = 2,
ylim = c(0, max(valores) * 1.1))
mtext("Tipo de Pozo", side = 1, line = 4)
barplot(tabla_resumen_Pozo$`hi (%)`,
main = "Gráfica N°3: Distribución Porcentual",
xlab = "", ylab = "Porcentaje %",
col = "lightcoral",
names.arg = tabla_resumen_Pozo$Tipo_Pozo,
cex.names = 0.7, las = 2)
mtext("Tipo de Pozo", side = 1, line = 4)
barplot(tabla_resumen_Pozo$`hi (%)`,
main = "Gráfica N°4: Distribución Porcentual",
xlab = "", ylab = "Porcentaje %",
col = "lightcoral", ylim = c(0, 100),
names.arg = tabla_resumen_Pozo$Tipo_Pozo,
cex.names = 0.7, las = 2)
mtext("Tipo de Pozo", side = 1, line = 4)
pie(tabla_resumen_Pozo$`hi (%)`,
main = "Gráfica N°5: Distribución Porcentual",
labels = paste0(round(tabla_resumen_Pozo$`hi (%)`, 1), "%"),
col = rainbow(length(tabla_resumen_Pozo$Tipo_Pozo)))
legend("topright", legend = tabla_resumen_Pozo$Tipo_Pozo,
fill = rainbow(length(tabla_resumen_Pozo$Tipo_Pozo)),
cex = 0.7, title = "Tipos de Pozos")
## ESTADÍSTICOS DESCRIPTIVOS
tabla_final <- data.frame(
Estadístico = c("Variable", "Rango", "Media", "Mediana", "Moda", "Desviación Estándar"),
Valor = c("Tipos de Pozos", "Campo Sacha",
paste0(round(mean(tabla_resumen_Pozo$`hi (%)`), 1), "%"),
paste0(round(median(tabla_resumen_Pozo$`hi (%)`), 1), "%"),
paste0(tabla_resumen_Pozo$Tipo_Pozo[which.max(tabla_resumen_Pozo$ni)],
" (", round(max(tabla_resumen_Pozo$`hi (%)`), 1), "%)"),
paste0(round(sd(tabla_resumen_Pozo$`hi (%)`), 1), "%"))
)
print(tabla_final)
## Estadístico Valor
## 1 Variable Tipos de Pozos
## 2 Rango Campo Sacha
## 3 Media 14.3%
## 4 Mediana 5.6%
## 5 Moda Tipo D (37.8%)
## 6 Desviación Estándar 14.5%
## CONCLUSIÓN El análisis revela la distribución de los diferentes tipos de pozos en el Campo Sacha, mostrando la predominancia de ciertas categorías sobre otras en términos de días de producción registrados.