##### UNIVERSIDAD CENTRAL DEL ECUADOR #####
#### AUTOR: ASHLY ALZATE ####
### CARRERA: INGENIERÍA EN PETROLEOS #####
#### VARIABLE DÍA ####
## DATOS ###
library(readxl)
Produccio_n_Campo_Sacha_csv<- read_excel("C:/Users/LEO/Documents/Producción Campo Sacha.csv.xlsx")
View(Produccio_n_Campo_Sacha_csv)
str(Produccio_n_Campo_Sacha_csv)
## tibble [8,344 × 31] (S3: tbl_df/tbl/data.frame)
## $ mes : chr [1:8344] "Ene" "Ene" "Ene" "Ene" ...
## $ día : num [1:8344] 1 1 1 1 1 1 1 1 1 1 ...
## $ Pozo : chr [1:8344] "SACHA-001A" "SACHA-019A" "SACHA-052B" "SACHA-083A" ...
## $ Campo : chr [1:8344] "SACHA" "SACHA" "SACHA" "SACHA" ...
## $ Reservorio : chr [1:8344] "U" "U" "U INFERIOR" "HOLLIN INFERIOR" ...
## $ Bpd : num [1:8344] NA 53 249 139 186 136 NA 456 161 164 ...
## $ Bppd_BH : num [1:8344] 159 NA NA NA NA NA 155 NA NA NA ...
## $ Bfpd_BE : num [1:8344] NA 534 346 1158 1163 ...
## $ Bfpd_BH : num [1:8344] 695 NA NA NA NA NA 441 NA NA NA ...
## $ Bapd_BE : num [1:8344] NA 481 97 1019 977 ...
## $ Bapd_BH : num [1:8344] 536 NA NA NA NA NA 286 NA NA NA ...
## $ Bsw_BE : num [1:8344] NA 90.1 28 88 84 ...
## $ Bsw_BH : num [1:8344] 77.1 NA NA NA NA ...
## $ Api_BE : num [1:8344] NA 26.7 27.8 27.7 24 20.5 NA 28.5 29.9 26.3 ...
## $ Api_BH : num [1:8344] 27.8 NA NA NA NA NA 23.2 NA NA NA ...
## $ Gas_BE : num [1:8344] NA 10.76 50.55 1.11 27.9 ...
## $ Gas_BH : num [1:8344] 32.3 NA NA NA NA ...
## $ Salinidad_BE : num [1:8344] NA 15920 30227 1600 13000 ...
## $ Salinidad_BH : num [1:8344] 10800 NA NA NA NA NA 3800 NA NA NA ...
## $ Rgl_BE : num [1:8344] NA 20.15 146.1 0.96 23.99 ...
## $ Rgl_BH : num [1:8344] 46.5 NA NA NA NA ...
## $ Gor_BE : num [1:8344] NA 203.02 203.01 7.99 150 ...
## $ Gor_BH : num [1:8344] 203 NA NA NA NA ...
## $ Horas_BE : num [1:8344] NA 4 5 4 4 10 NA 4 10 10 ...
## $ Horas_BH : num [1:8344] 4 NA NA NA NA NA 4 NA NA NA ...
## $ Bomba_BE : chr [1:8344] NA "SF-320|SF-320|SF-900|SFGH2500/520/180/9259" "RC 1000|RC 1000|RC 1000/300/120/9250" "P23/68/30/7000" ...
## $ Bomba_BH : chr [1:8344] "JET 12K/0//0" NA NA NA ...
## $ Frecuencia Operaciones: num [1:8344] NA 65 62 46 59 52 NA 58.5 57 54 ...
## $ Voltaje : num [1:8344] NA 479 457 364 440 452 NA 475 455 439 ...
## $ Amperaje : num [1:8344] NA 29 35 14 59 30 NA 23 35 34 ...
## $ Presión Intake : num [1:8344] NA 484 406 0 345 162 NA 546 338 0 ...
library(dplyr)
##
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
##Extraer Variable Nominal
día <- Produccio_n_Campo_Sacha_csv$día
##EDAvariable nominal
TDF_día<- table(día)
tabla_día <- as.data.frame(TDF_día)
hi <- tabla_día$Freq/sum(tabla_día$Freq)
hi_porc <- hi*100
sum(hi_porc)
## [1] 100
tabla_día <- data.frame(tabla_día,hi_porc)
library(dplyr)
# Asegurarse de que 'día' sea numérico
tabla_día$día <- as.numeric(tabla_día$día)
# Crear la columna 'grupo' según el número de día
tabla_día$grupo <- case_when(
tabla_día$día == 1 ~ 1,
tabla_día$día == 2 ~ 2,
tabla_día$día == 3 ~ 3,
tabla_día$día == 4 ~ 4,
tabla_día$día == 5 ~ 5,
tabla_día$día == 6 ~ 6,
tabla_día$día == 7 ~ 7,
tabla_día$día == 8 ~ 8,
tabla_día$día == 9 ~ 9,
tabla_día$día == 10 ~ 10,
tabla_día$día == 11 ~ 11,
tabla_día$día == 12 ~ 12,
tabla_día$día == 13 ~ 13,
tabla_día$día == 14 ~ 14,
tabla_día$día == 15 ~ 15,
tabla_día$día == 16 ~ 16,
tabla_día$día == 17 ~ 17,
tabla_día$día == 18 ~ 18,
tabla_día$día == 19 ~ 19,
tabla_día$día == 20 ~ 20,
tabla_día$día == 21 ~ 21,
tabla_día$día == 22 ~ 22,
tabla_día$día == 23 ~ 23,
tabla_día$día == 24 ~ 24,
tabla_día$día == 25 ~ 25,
tabla_día$día == 26 ~ 26,
tabla_día$día == 27 ~ 27,
tabla_día$día == 28 ~ 28,
tabla_día$día == 29 ~ 29,
tabla_día$día == 30 ~ 30,
tabla_día$día == 31 ~ 31,
TRUE ~ NA_real_ # Para días que falten o sean inválidos
)
# Verificar
head(tabla_día[, c("día", "grupo")])
## día grupo
## 1 1 1
## 2 2 2
## 3 3 3
## 4 4 4
## 5 5 5
## 6 6 6
tabla_resumen <- tabla_día %>%
group_by(grupo) %>%
summarise(
Frecuencia = sum(Freq),
Porcentaje = sum(hi_porc)
) %>%
arrange(desc(Frecuencia))
sum(tabla_resumen$Frecuencia)
## [1] 8344
sum(tabla_resumen$Porcentaje)
## [1] 100
colnames(tabla_resumen) <- c("día","ni","hi (%)")
print(tabla_resumen)
## # A tibble: 31 × 3
## día ni `hi (%)`
## <dbl> <int> <dbl>
## 1 1 349 4.18
## 2 16 346 4.15
## 3 3 333 3.99
## 4 2 331 3.97
## 5 5 327 3.92
## 6 27 309 3.70
## 7 8 304 3.64
## 8 9 296 3.55
## 9 4 295 3.54
## 10 15 287 3.44
## # ℹ 21 more rows
#### Crear de fila de totales ####
totales <- c( día = "TOTAL",
ni= sum(tabla_resumen$ni),
hi= sum(hi*100))
tabla_día <- rbind(tabla_resumen,totales)
tabla_día
## # A tibble: 32 × 3
## día ni `hi (%)`
## <chr> <chr> <chr>
## 1 1 349 4.18264621284755
## 2 16 346 4.14669223394056
## 3 3 333 3.99089165867689
## 4 2 331 3.96692233940556
## 5 5 327 3.9189837008629
## 6 27 309 3.7032598274209
## 7 8 304 3.64333652924257
## 8 9 296 3.54745925215724
## 9 4 295 3.53547459252157
## 10 15 287 3.43959731543624
## # ℹ 22 more rows
# Asignar a una variable más corta para facilitar el trabajo
database <- Produccio_n_Campo_Sacha_csv
# día
# Frecuencias completas
frecuencias_día <- table(database$día)
# Ordenar de mayor a menor
frecuencias_día_ordenadas <- sort(frecuencias_día, decreasing = TRUE)
# Diagrama de barras local ni
barplot(frecuencias_día_ordenadas,
main = "Gráfica Nº1 Distribución de día Campo Sacha",
xlab = "",
ylab = "Cantidad",
col = colorRampPalette(c("#4ECDC4"))(length(frecuencias_día_ordenadas)),
border = "white",
cex.names = 0.6,
las = 2)
mtext("día", side = 1, line = 7)

# Diagrama de barras global ni
top_día <- head(frecuencias_día_ordenadas, 10)
barplot(top_día,
main = "Gráfica Nº2 Distribución de Reservorios Campo Sacha",
xlab = "",
ylab = "Cantidad",
col = colorRampPalette(c("#4ECDC4", "#4ECDC4", "#4ECDC4"))(length(top_día)),
border = "white",
cex.names = 0.7,
las = 2,
ylim = c(0,5234))
mtext("día", side = 1, line = 8)

# Diagrama de barras local hi
barplot(tabla_resumen$`hi (%)`, main="Gráfica N°3: Distribución del porcentaje de día del Campo Sacha",
xlab = "",
ylab = "Porcentaje %",
col = "skyblue",
names.arg=tabla_resumen$día,
cex.names = 0.8,
las = 2)
mtext("día", side = 1, line = 8)

# Diagrama de barrras global hi
barplot(tabla_resumen$`hi (%)`,main="Gráfica N°4: Distribución del porcentaje de día del Campo Sacha ",
xlab = "",
ylab = "Porcentaje %",
col = "skyblue",
ylim = c(0,100),
names.arg=tabla_resumen$día,
cex.names = 0.8,
las = 2)
mtext("día", side = 1, line = 8)

# Definir colores (ajustar al número de filas)
colores <- rev(heat.colors(nrow(tabla_resumen)))
# Diagrama circular
pie(tabla_resumen$`hi (%)`,
main = "Gráfica N°5: Distribución porcentual de los días del Campo Sacha",
radius = 1.08,
labels = paste0(round(tabla_resumen$`hi (%)`, 2), "%"),
col = colores,
cex = 0.8
)
# Permitir que la leyenda salga del área del gráfico
par(xpd = TRUE)
# Agregar leyenda
legend(x = 1.5, y = 1,
legend = tabla_resumen$día,
fill = colores,
cex = 0.5,
title = "Día del Campo Sacha")

tabla_indicadores <- data.frame("Variable" =c("día"),
"Rango" = " Campo Sacha",
"X" = " - ",
"Me" = " - ",
"Mo" = " Tipos ",
"V" = " - ",
"Sd" = " - ",
"Cv" = " - ",
"As" = " - ",
"K" = " - ",
"Valores Atipicos" = " - ")
library(knitr)
kable(tabla_indicadores, align = 'c', caption = "Conclusiones de la variable
día del campo Sacha")
Conclusiones de la variable día del campo Sacha
| día |
Campo Sacha |
- |
- |
Tipos |
- |
- |
- |
- |
- |
- |