##### UNIVERSIDAD CENTRAL DEL ECUADOR #####
#### AUTOR: Leonardo Ruiz ####
### CARRERA: INGENIERÍA EN PETROLEOS #####



#### VARIABLE Bomba_BE  ####
## DATOS ###
library(readxl)
Produccio_n_Campo_Sacha_csv <- read_excel("r-graficas/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
Bomba_BE <- Produccio_n_Campo_Sacha_csv$Bomba_BE
##EDAvariable nominal
TDF_Bomba_BE<- table(Bomba_BE)

tabla_Bomba_BE <- as.data.frame(TDF_Bomba_BE)
hi <- tabla_Bomba_BE$Freq/sum(tabla_Bomba_BE$Freq)
hi_porc <- hi*100
sum(hi_porc)
## [1] 100
tabla_Bomba_BE <- data.frame(tabla_Bomba_BE,hi_porc)
### Agrupación ####
tabla_Bomba_BE$grupo <- case_when(
    grepl("FLEX|FLEXER|FLEX7ER|FLEX47|Flex ", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas FLEX",
    grepl("SF|SFGH", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas SF / SFGH",
    grepl("WD-", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas Weatherford (WD)",
    grepl("NHV|NH\\(|NH940|NAV|NB", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas National Oilwell (NH / NHV / NB / NAV)",
    grepl("D1050N|DN1750|D3500N|D5-21", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas D / DN Series",
    grepl("E1000|E3000", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas E-Series",
    grepl("S1500N|S4000N", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas S-Series",
    grepl("RC 1000", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas RC",
    grepl("GN", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas GN",
    grepl("WE", tabla_Bomba_BE$Bomba_BE, ignore.case = TRUE) ~ "Bombas WE",
    TRUE ~ "Otros / Sin clasificar")
tabla_resumen <- tabla_Bomba_BE %>%
  group_by(grupo) %>%
  summarise(
    Frecuencia = sum(Freq),
    Porcentaje = sum(hi_porc)
  ) %>%
  arrange(desc(Frecuencia))

sum(tabla_resumen$Frecuencia)
## [1] 7705
sum(tabla_resumen$Porcentaje)
## [1] 100
colnames(tabla_resumen) <- c("Bomba_BE","ni","hi (%)")
print(tabla_resumen)
## # A tibble: 11 × 3
##    Bomba_BE                                         ni `hi (%)`
##    <chr>                                         <int>    <dbl>
##  1 Bombas FLEX                                    1920  24.9   
##  2 Bombas D / DN Series                           1769  23.0   
##  3 Bombas National Oilwell (NH / NHV / NB / NAV)  1022  13.3   
##  4 Bombas Weatherford (WD)                         950  12.3   
##  5 Bombas SF / SFGH                                898  11.7   
##  6 Otros / Sin clasificar                          557   7.23  
##  7 Bombas E-Series                                 323   4.19  
##  8 Bombas RC                                       135   1.75  
##  9 Bombas S-Series                                  70   0.909 
## 10 Bombas GN                                        57   0.740 
## 11 Bombas WE                                         4   0.0519
#### Crear de fila de totales ####
totales <- c( Bomba_BE = "TOTAL",
              ni= sum(tabla_resumen$ni),
              hi= sum(hi*100))

tabla_bomba <- rbind(tabla_resumen,totales)
tabla_bomba
## # A tibble: 12 × 3
##    Bomba_BE                                      ni    `hi (%)`          
##    <chr>                                         <chr> <chr>             
##  1 Bombas FLEX                                   1920  24.9188838416613  
##  2 Bombas D / DN Series                          1769  22.9591174561973  
##  3 Bombas National Oilwell (NH / NHV / NB / NAV) 1022  13.2641142115509  
##  4 Bombas Weatherford (WD)                       950   12.3296560674886  
##  5 Bombas SF / SFGH                              898   11.6547696301103  
##  6 Otros / Sin clasificar                        557   7.2290720311486   
##  7 Bombas E-Series                               323   4.19208306294614  
##  8 Bombas RC                                     135   1.75210902011681  
##  9 Bombas S-Series                               70    0.9085009733939   
## 10 Bombas GN                                     57    0.739779364049319 
## 11 Bombas WE                                     4     0.0519143413367943
## 12 TOTAL                                         7705  100
# Asignar a una variable más corta para facilitar el trabajo
database <- Produccio_n_Campo_Sacha_csv

#  RESERVORIO
# Frecuencias completas
frecuencias_bomba_be <- table(database$Bomba_BE)

# Ordenar de mayor a menor
frecuencias_Bomba_BE_ordenadas <- sort(frecuencias_bomba_be, decreasing = TRUE)
# Diagrama de barras local ni
barplot(frecuencias_Bomba_BE_ordenadas,
        main = "Gráfica Nº1 Distribución de las Bomba_BE Campo Sacha",
        xlab = "",
        ylab = "Cantidad",
        col = colorRampPalette(c("#B4C5A6"))(length(frecuencias_Bomba_BE_ordenadas)),
        border = "white",
        cex.names = 0.6,
        las = 2)

mtext("Bomba_BE", side = 1, line = 7)

# Diagrama de barras global ni
top_Bomba_BE <- head(frecuencias_Bomba_BE_ordenadas, 10)

barplot(top_Bomba_BE,
        main = "Gráfica Nº2 Distribución de las Bomba_BE Campo Sacha",
        xlab = "",
        ylab = "Cantidad", 
        col = colorRampPalette(c("#B4C5A6", "#B4C5A6", "#B4C5A6"))(length(top_Bomba_BE)),
        border = "white",
        cex.names = 0.7,
        las = 2,
        ylim = c(0,5234))
mtext("Bomba_BE", side = 1, line = 8)

# Diagrama de barras local hi

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

# Diagrama de barrras global hi

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

# Diagrma circular

pie (tabla_resumen$`hi (%)`,main = "Gráfica N°5: Distribución porcentual de las Bomba_BE del Campo Sacha",
     radius = 1,
     labels = paste0(round(tabla_resumen$`hi (%)`,2),"%"),
     col = colores <- c(rev(heat.colors(7))),
     cex=0.8,
)
par(xpd = TRUE)  # Permite que la leyenda salga del área del gráfico

legend(x = 1.5, y = 1,
       legend = tabla_resumen$Bomba_BE,
       fill = colores <- c(rev(heat.colors(7))),
       cex = 0.5,
       title = "Bomba_BE del Campo Sacha")

tabla_indicadores <- data.frame("Variable" =c("Bomba_BE"),
                                "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
      BOMBA_BE del campo Sacha")
Conclusiones de la variable BOMBA_BE del campo Sacha
Variable Rango X Me Mo V Sd Cv As K Valores.Atipicos
Bomba_BE Campo Sacha - - Tipos - - - - - -