7.4 Detectar la presencia de outliers, explicar el (los) criterio(s) aplicado(s)

R/ En la búsqueda de valores atípicos de cada una de las variables, se aplicaron dos enfoques distintos: Criterio de Desviación Estándar: En este método, se identificaron los valores que superan en más de 3 veces la desviación estándar de la variable con respecto a su media ± x ̅+3*σ

Enfoque del Rango Intercuantil (RIC): En este segundo método, se utilizó el Rango Intercuantil (RIC) para detectar valores atípicos. Los valores atípicos se determinaron mediante la fórmula: Atípicos=(Q1-1.5RIC); (Q3-1.5RIC), donde Q1 y Q3 representan el primer y tercer cuartil respectivamente.

7.4 Detectar la presencia de outliers, explicar el (los) criterio(s) aplicado(s)

#lectura de datos 
setwd("C:/COPIA DE SEGURIDAD 2023/MAESTRÌA/PROCESOS ESTOCÀSTICOS/")

ruta_dir1 <- ("C:/COPIA DE SEGURIDAD 2023/MAESTRÌA/PROCESOS ESTOCÀSTICOS/DATOS_TALLER 1_R.xlsx")
TABLA_ORIGEN<- read_excel("DATOS_TALLER 1_R.xlsx")

7.4 Detectar la presencia de outliers, explicar el (los) criterio(s) aplicado(s)

Atípicos para la variable t (años)

# Calcular la media y la desviación estándar para la variable t [años]

media <- mean(TABLA_ORIGEN$`t [anos]`)
desviacion_estandar <- sd(TABLA_ORIGEN$`t [anos]`)

# Definir el umbral de ± tres veces la desviación estándar

umbral_superior <- media + 3 * desviacion_estandar
umbral_inferior <- media - 3 * desviacion_estandar


Valores_atipicos_S <- TABLA_ORIGEN$`t [anos]`[TABLA_ORIGEN$`t [anos]` > umbral_superior]


cat("Valores atipicos_S:", Valores_atipicos_S, "\n")
## Valores atipicos_S:
#Hallar Outliers por Rango intercuantil (IRC) para l avariable t(años)

cuartiles <- quantile(x = TABLA_ORIGEN$`t [anos]`, probs = c(0.25, 0.50, 0.75), type = 6)

Q1 <- cuartiles[1]; Q1
##    25% 
## 4.6629
Q3 <- cuartiles[3]; Q3
##      75% 
## 12.95775
RIC <- Q3 - Q1

Atipicos_superior<- Q3 + (1.5*(RIC ))

Atipicos_superior
##      75% 
## 25.40002
atipicos_t <- TABLA_ORIGEN$`t [anos]`>= Atipicos_superior
atipicos_t
##  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [25] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [37] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [49] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE

Calculo de los outliers para la variable x(años)

# Calcular la media y la desviación estándar para la variable x [años]

media <- mean(TABLA_ORIGEN$`x [anos]`)
desviacion_estandar <- sd(TABLA_ORIGEN$`x [anos]`)

# Definir el umbral de ± tres veces la desviación estándar

umbral_superior <- media + 3 * desviacion_estandar
umbral_inferior <- media - 3 * desviacion_estandar


Valores_atipicos_S <- TABLA_ORIGEN$`x [anos]`[TABLA_ORIGEN$`x [anos]` > umbral_superior]

Valores_atipicos_I <- TABLA_ORIGEN$`x [anos]`[TABLA_ORIGEN$`x [anos]` < umbral_inferior ]


cat("Valores atipicos_S:", Valores_atipicos_S, "\n")
## Valores atipicos_S: 1.8898
cat("Valores atipicos_I:", Valores_atipicos_I, "\n")
## Valores atipicos_I:
#Hallar Outliers por Rango intercuantil (IRC) para l avariable t(años)

cuartiles <- quantile(x = TABLA_ORIGEN$`x [anos]`, probs = c(0.25, 0.50, 0.75), type = 6)

Q1 <- cuartiles[1]; Q1
##     25% 
## 0.12795
Q3 <- cuartiles[3]; Q3
##     75% 
## 0.43015
RIC <- Q3 - Q1
RIC 
##    75% 
## 0.3022
Atipicos_inferior <- Q1 - (1.5*(RIC ))
Atipicos_superior<- Q3 + (1.5*(RIC ))

Atipicos_inferior 
##      25% 
## -0.32535
Atipicos_superior
##     75% 
## 0.88345
#Valores atípicos límite superior 

atipicos_sx <- which (TABLA_ORIGEN$`x [anos]`>= Atipicos_superior)
valores_atipicos_sx <- TABLA_ORIGEN$`x [anos]`[atipicos_sx]
valores_atipicos_sx 
## [1] 1.2450 1.0061 1.3586 1.8898 1.1592
#Valores atípicos límite inferior 

atipicos_ix <- which (TABLA_ORIGEN$`x [anos]`<= Atipicos_inferior)
valores_atipicos_ix <- TABLA_ORIGEN$`x [anos]`[atipicos_ix]
valores_atipicos_ix 
## numeric(0)

Calculo de los outliers para la variable costo ($COP*10^6)

# Calcular la media y la desviación estándar para la variable 
#costo [$COP*10^6]

media <- mean(TABLA_ORIGEN$`[$COP*10^6 ]`)
desviacion_estandar <- sd(TABLA_ORIGEN$`[$COP*10^6 ]`)

# Definir el umbral de ± tres veces la desviación estándar

umbral_superior <- media + 3 * desviacion_estandar
umbral_inferior <- media - 3 * desviacion_estandar


Valores_atipicos_S <- TABLA_ORIGEN$`[$COP*10^6 ]`[TABLA_ORIGEN$`[$COP*10^6 ]` > umbral_superior]

Valores_atipicos_I <- TABLA_ORIGEN$`[$COP*10^6 ]`[TABLA_ORIGEN$`[$COP*10^6 ]`< umbral_inferior ]


cat("Valores atipicos_S:", Valores_atipicos_S, "\n")
## Valores atipicos_S: 360.9218
cat("Valores atipicos_I:", Valores_atipicos_I, "\n")
## Valores atipicos_I:
#Hallar Outliers por Rango intercuantil (IRC) para l avariable t(años)

cuartiles <- quantile(x = TABLA_ORIGEN$`[$COP*10^6 ]`, probs = c(0.25, 0.50, 0.75), type = 6)

Q1 <- cuartiles[1]; Q1
##    25% 
## 9.6332
Q3 <- cuartiles[3]; Q3
##     75% 
## 80.3751
RIC <- Q3 - Q1
RIC 
##     75% 
## 70.7419
Atipicos_inferior <- Q1 - (1.5*(RIC ))
Atipicos_superior<- Q3 + (1.5*(RIC ))

Atipicos_inferior 
##       25% 
## -96.47965
Atipicos_superior
##     75% 
## 186.488
#Valores atípicos límite superior 

atipicos_sx <- which (TABLA_ORIGEN$`[$COP*10^6 ]`>= Atipicos_superior)
valores_atipicos_sx <- TABLA_ORIGEN$`[$COP*10^6 ]`[atipicos_sx]
valores_atipicos_sx 
## [1] 360.9218
#Valores atípicos límite inferior 

atipicos_ix <- which (TABLA_ORIGEN$`[$COP*10^6 ]`<= Atipicos_inferior)
valores_atipicos_ix <- TABLA_ORIGEN$`[$COP*10^6 ]`[atipicos_ix]
valores_atipicos_ix 
## numeric(0)

Calculo de los outliers para la variable ttr (horas)

# Calcular la media y la desviación estándar para la variable ttr (horas)

media <- mean(TABLA_ORIGEN$`ttr [horas] c`)
desviacion_estandar <- sd(TABLA_ORIGEN$`ttr [horas] c`)

# Definir el umbral de ± tres veces la desviación estándar

umbral_superior <- media + 3 * desviacion_estandar
umbral_inferior <- media - 3 * desviacion_estandar


Valores_atipicos_S <- TABLA_ORIGEN$`ttr [horas] c`[TABLA_ORIGEN$`ttr [horas] c` > umbral_superior]

Valores_atipicos_I <- TABLA_ORIGEN$`ttr [horas] c`[TABLA_ORIGEN$`ttr [horas] c`< umbral_inferior ]


cat("Valores atipicos_S:", Valores_atipicos_S, "\n")
## Valores atipicos_S: 30.2705
cat("Valores atipicos_I:", Valores_atipicos_I, "\n")
## Valores atipicos_I:
#Hallar Outliers por Rango intercuantil (IRC) para l avariable t(años)

cuartiles <- quantile(x = TABLA_ORIGEN$`ttr [horas] c`, probs = c(0.25, 0.50, 0.75), type = 6)

Q1 <- cuartiles[1]; Q1
##     25% 
## 1.71405
Q3 <- cuartiles[3]; Q3
##    75% 
## 7.3929
RIC <- Q3 - Q1
RIC 
##     75% 
## 5.67885
Atipicos_inferior <- Q1 - (1.5*(RIC ))
Atipicos_superior<- Q3 + (1.5*(RIC ))

Atipicos_inferior 
##       25% 
## -6.804225
Atipicos_superior
##      75% 
## 15.91118
#Valores atípicos límite superior 

atipicos_sx <- which (TABLA_ORIGEN$`ttr [horas] c`>= Atipicos_superior)
valores_atipicos_sx <- TABLA_ORIGEN$`ttr [horas] c`[atipicos_sx]
valores_atipicos_sx 
## [1] 30.2705 20.8332 16.6261
#Valores atípicos límite inferior 

atipicos_ix <- which (TABLA_ORIGEN$`ttr [horas] c`<= Atipicos_inferior)
valores_atipicos_ix <- TABLA_ORIGEN$`ttr [horas] c`[atipicos_ix]
valores_atipicos_ix
## numeric(0)