library("devtools")
## Loading required package: usethis
library("dplyr")
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library("oilabs")
library("tidyverse")
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats 1.0.0 ✔ readr 2.1.5
## ✔ ggplot2 3.5.1 ✔ stringr 1.5.1
## ✔ lubridate 1.9.3 ✔ tibble 3.2.1
## ✔ purrr 1.0.2 ✔ tidyr 1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library("RColorBrewer")
library("gridExtra")
##
## Attaching package: 'gridExtra'
##
## The following object is masked from 'package:dplyr':
##
## combine
require("knitr")
## Loading required package: knitr
library("funModeling")
## Loading required package: Hmisc
##
## Attaching package: 'Hmisc'
##
## The following objects are masked from 'package:dplyr':
##
## src, summarize
##
## The following objects are masked from 'package:base':
##
## format.pval, units
##
## funModeling v.1.9.5 :)
## Examples and tutorials at livebook.datascienceheroes.com
## / Now in Spanish: librovivodecienciadedatos.ai
library("nortest")
library("readxl")
require(car)
## Loading required package: car
## Loading required package: carData
##
## Attaching package: 'car'
##
## The following object is masked from 'package:purrr':
##
## some
##
## The following object is masked from 'package:dplyr':
##
## recode
install.packages("devtools")
## Warning: package 'devtools' is in use and will not be installed
install.packages("funModeling")
## Warning: package 'funModeling' is in use and will not be installed
### **1. Introducción
Base1 <- read_excel("W12513-XLS-ENG.xlsx",sheet="Base1")
attach(Base1)
glimpse(Base1)
## Rows: 274
## Columns: 9
## $ ID <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18…
## $ age <dbl> 23, 24, 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 26, 26, 2…
## $ sex <dbl> 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 2, 2, 1, 1, 1, 2…
## $ gmat_tot <dbl> 620, 610, 670, 570, 710, 640, 610, 650, 630, 680, 740, 610, 7…
## $ gmat_qpc <dbl> 77, 90, 99, 56, 93, 82, 89, 88, 79, 99, 99, 75, 95, 97, 84, 6…
## $ gmat_vpc <dbl> 87, 71, 78, 81, 98, 89, 74, 89, 91, 81, 98, 87, 95, 97, 93, 9…
## $ gmat_tpc <dbl> 87, 87, 95, 75, 98, 91, 87, 92, 89, 96, 99, 86, 98, 99, 94, 9…
## $ s_avg <dbl> 3.40, 3.50, 3.30, 3.30, 3.60, 3.90, 3.40, 3.30, 3.30, 3.45, 3…
## $ f_avg <dbl> 3.00, 4.00, 3.25, 2.67, 3.75, 3.75, 3.50, 3.75, 3.25, 3.67, 4…
Base2 <- read_excel("W12513-XLS-ENG.xlsx",sheet="Base2")
attach(Base2)
## The following object is masked from Base1:
##
## ID
glimpse(Base2)
## Rows: 274
## Columns: 6
## $ ID <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18…
## $ quarter <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1…
## $ work_yrs <dbl> 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 4, 2, 4, 3, 2, 4, 4…
## $ frstlang <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1…
## $ salary <dbl> 0, 0, 0, 0, 999, 0, 0, 0, 999, 998, 998, 998, 998, 998, 998, …
## $ satis <dbl> 7, 6, 6, 7, 5, 6, 5, 6, 4, 998, 998, 998, 998, 998, 998, 998,…
#Unión de bases
Base<-inner_join(Base1,Base2, by = "ID") %>%glimpse()
## Rows: 274
## Columns: 14
## $ ID <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18…
## $ age <dbl> 23, 24, 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26, 26, 26, 2…
## $ sex <dbl> 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 2, 2, 1, 1, 1, 2…
## $ gmat_tot <dbl> 620, 610, 670, 570, 710, 640, 610, 650, 630, 680, 740, 610, 7…
## $ gmat_qpc <dbl> 77, 90, 99, 56, 93, 82, 89, 88, 79, 99, 99, 75, 95, 97, 84, 6…
## $ gmat_vpc <dbl> 87, 71, 78, 81, 98, 89, 74, 89, 91, 81, 98, 87, 95, 97, 93, 9…
## $ gmat_tpc <dbl> 87, 87, 95, 75, 98, 91, 87, 92, 89, 96, 99, 86, 98, 99, 94, 9…
## $ s_avg <dbl> 3.40, 3.50, 3.30, 3.30, 3.60, 3.90, 3.40, 3.30, 3.30, 3.45, 3…
## $ f_avg <dbl> 3.00, 4.00, 3.25, 2.67, 3.75, 3.75, 3.50, 3.75, 3.25, 3.67, 4…
## $ quarter <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1…
## $ work_yrs <dbl> 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 4, 2, 4, 3, 2, 4, 4…
## $ frstlang <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1…
## $ salary <dbl> 0, 0, 0, 0, 999, 0, 0, 0, 999, 998, 998, 998, 998, 998, 998, …
## $ satis <dbl> 7, 6, 6, 7, 5, 6, 5, 6, 4, 998, 998, 998, 998, 998, 998, 998,…
#Cambio de nombre de las variables a español
names(Base)<-c("ID","Edad","Sexo","GMAT_Total","Perc_Cuant_GMAT",
"Perc_Verbal_GMAT","Perc_Gral_GMAT","Prom_Primavera",
"Prom_Otoño","QRanking","Exp_laboral","Lengua_materna",
"Salario_Inicial","Grado_Satisfacción")
#Se aplica la funcion tibble para poder hacer un análisis de los datos de tidyverse
tibble(Base)
## # A tibble: 274 × 14
## ID Edad Sexo GMAT_Total Perc_Cuant_GMAT Perc_Verbal_GMAT Perc_Gral_GMAT
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1 23 2 620 77 87 87
## 2 2 24 1 610 90 71 87
## 3 3 24 1 670 99 78 95
## 4 4 24 1 570 56 81 75
## 5 5 24 2 710 93 98 98
## 6 6 24 1 640 82 89 91
## 7 7 25 1 610 89 74 87
## 8 8 25 2 650 88 89 92
## 9 9 25 1 630 79 91 89
## 10 10 25 1 680 99 81 96
## # ℹ 264 more rows
## # ℹ 7 more variables: Prom_Primavera <dbl>, Prom_Otoño <dbl>, QRanking <dbl>,
## # Exp_laboral <dbl>, Lengua_materna <dbl>, Salario_Inicial <dbl>,
## # Grado_Satisfacción <dbl>
glimpse(Base)
## Rows: 274
## Columns: 14
## $ ID <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, …
## $ Edad <dbl> 23, 24, 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, 26,…
## $ Sexo <dbl> 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 2, 2, …
## $ GMAT_Total <dbl> 620, 610, 670, 570, 710, 640, 610, 650, 630, 680, 7…
## $ Perc_Cuant_GMAT <dbl> 77, 90, 99, 56, 93, 82, 89, 88, 79, 99, 99, 75, 95,…
## $ Perc_Verbal_GMAT <dbl> 87, 71, 78, 81, 98, 89, 74, 89, 91, 81, 98, 87, 95,…
## $ Perc_Gral_GMAT <dbl> 87, 87, 95, 75, 98, 91, 87, 92, 89, 96, 99, 86, 98,…
## $ Prom_Primavera <dbl> 3.40, 3.50, 3.30, 3.30, 3.60, 3.90, 3.40, 3.30, 3.3…
## $ Prom_Otoño <dbl> 3.00, 4.00, 3.25, 2.67, 3.75, 3.75, 3.50, 3.75, 3.2…
## $ QRanking <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
## $ Exp_laboral <dbl> 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 4, 2, 4, …
## $ Lengua_materna <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, …
## $ Salario_Inicial <dbl> 0, 0, 0, 0, 999, 0, 0, 0, 999, 998, 998, 998, 998, …
## $ Grado_Satisfacción <dbl> 7, 6, 6, 7, 5, 6, 5, 6, 4, 998, 998, 998, 998, 998,…
df_status(Base)
## variable q_zeros p_zeros q_na p_na q_inf p_inf type unique
## 1 ID 0 0.00 0 0 0 0 numeric 274
## 2 Edad 0 0.00 0 0 0 0 numeric 21
## 3 Sexo 0 0.00 0 0 0 0 numeric 2
## 4 GMAT_Total 0 0.00 0 0 0 0 numeric 31
## 5 Perc_Cuant_GMAT 0 0.00 0 0 0 0 numeric 48
## 6 Perc_Verbal_GMAT 0 0.00 0 0 0 0 numeric 34
## 7 Perc_Gral_GMAT 2 0.73 0 0 0 0 numeric 42
## 8 Prom_Primavera 0 0.00 0 0 0 0 numeric 36
## 9 Prom_Otoño 3 1.09 0 0 0 0 numeric 21
## 10 QRanking 0 0.00 0 0 0 0 numeric 4
## 11 Exp_laboral 3 1.09 0 0 0 0 numeric 18
## 12 Lengua_materna 0 0.00 0 0 0 0 numeric 2
## 13 Salario_Inicial 90 32.85 0 0 0 0 numeric 45
## 14 Grado_Satisfacción 0 0.00 0 0 0 0 numeric 8
summary(Base)
## ID Edad Sexo GMAT_Total
## Min. : 1.00 Min. :22.00 Min. :1.000 Min. :450.0
## 1st Qu.: 69.25 1st Qu.:25.00 1st Qu.:1.000 1st Qu.:580.0
## Median :137.50 Median :27.00 Median :1.000 Median :620.0
## Mean :137.50 Mean :27.36 Mean :1.248 Mean :619.5
## 3rd Qu.:205.75 3rd Qu.:29.00 3rd Qu.:1.000 3rd Qu.:660.0
## Max. :274.00 Max. :48.00 Max. :2.000 Max. :790.0
## Perc_Cuant_GMAT Perc_Verbal_GMAT Perc_Gral_GMAT Prom_Primavera
## Min. :28.00 Min. :16.00 Min. : 0.0 Min. :2.000
## 1st Qu.:72.00 1st Qu.:71.00 1st Qu.:78.0 1st Qu.:2.708
## Median :83.00 Median :81.00 Median :87.0 Median :3.000
## Mean :80.64 Mean :78.32 Mean :84.2 Mean :3.025
## 3rd Qu.:93.00 3rd Qu.:91.00 3rd Qu.:94.0 3rd Qu.:3.300
## Max. :99.00 Max. :99.00 Max. :99.0 Max. :4.000
## Prom_Otoño QRanking Exp_laboral Lengua_materna
## Min. :0.000 Min. :1.000 Min. : 0.000 Min. :1.000
## 1st Qu.:2.750 1st Qu.:1.250 1st Qu.: 2.000 1st Qu.:1.000
## Median :3.000 Median :2.000 Median : 3.000 Median :1.000
## Mean :3.062 Mean :2.478 Mean : 3.872 Mean :1.117
## 3rd Qu.:3.250 3rd Qu.:3.000 3rd Qu.: 4.000 3rd Qu.:1.000
## Max. :4.000 Max. :4.000 Max. :22.000 Max. :2.000
## Salario_Inicial Grado_Satisfacción
## Min. : 0 Min. : 1.0
## 1st Qu.: 0 1st Qu.: 5.0
## Median : 999 Median : 6.0
## Mean : 39026 Mean :172.2
## 3rd Qu.: 97000 3rd Qu.: 7.0
## Max. :220000 Max. :998.0
#¿Existe diferencia significativa en cuánto puede esperar ganar un estudiante, por la experiencia laboral?
BaseF<-Base%>%
filter(Salario_Inicial!=998 & Salario_Inicial!=999)
BaseF <- BaseF %>%
mutate(
CAT_Salario = case_when(
Salario_Inicial == 998 | Salario_Inicial == 999 ~ 1,
Salario_Inicial == 0 ~ 2,
Salario_Inicial > 0 & Salario_Inicial <= 100000 ~ 3,
TRUE ~ 4
),
CAT_Salario = factor(CAT_Salario, levels = c(1, 2, 3, 4), labels = c("1. S.I.", "2. Sin salario", "3.<0 - 100k]", "4.>100k"))
)
attach(BaseF)
## The following object is masked from Base2:
##
## ID
##
## The following object is masked from Base1:
##
## ID
BaseF %>%
group_by(CAT_Salario) %>%
summarise(
Mínimo = min(Salario_Inicial, na.rm = TRUE),
Máximo = max(Salario_Inicial, na.rm = TRUE),
Promedio = mean(Salario_Inicial, na.rm = TRUE),
Mediana = median(Salario_Inicial, na.rm = TRUE),
SD = sd(Salario_Inicial, na.rm = TRUE),
Ngraduados = n(),
Pgraduados = n()/nrow(Base),
.groups = "drop"
)
## # A tibble: 3 × 8
## CAT_Salario Mínimo Máximo Promedio Mediana SD Ngraduados Pgraduados
## <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <int> <dbl>
## 1 2. Sin salario 0 0 0 0 0 90 0.328
## 2 3.<0 - 100k] 64000 100000 93332. 95000 7063. 55 0.201
## 3 4.>100k 100400 220000 114144. 107150 19985. 48 0.175
mean(Salario_Inicial)
## [1] 54985.32
median(Salario_Inicial)
## [1] 85000
sd(Salario_Inicial)
## [1] 53152.39
BaseF %>%
group_by(Exp_laboral) %>%
summarise(Mínimo=min(Salario_Inicial) ,
Máximo=max(Salario_Inicial),
Promedio=mean(Salario_Inicial),
Mediana=median(Salario_Inicial),
SD=sd(Salario_Inicial),
Rango=max(Salario_Inicial)-min(Salario_Inicial),
Ngraduados = n(),
Pgraduados = n()/nrow(BaseF))
## # A tibble: 18 × 9
## Exp_laboral Mínimo Máximo Promedio Mediana SD Rango Ngraduados
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <int>
## 1 0 0 95000 47500 47500 67175. 95000 2
## 2 1 0 162000 41413. 0 54632. 162000 20
## 3 2 0 145800 61860 92000 48390. 145800 60
## 4 3 0 126710 60992. 88500 51184. 126710 35
## 5 4 0 130000 58000 94500 54408. 130000 20
## 6 5 0 120000 38000 0 51620. 120000 19
## 7 6 0 112000 82389. 105000 46845. 112000 9
## 8 7 0 98000 16333. 0 40008. 98000 6
## 9 8 0 120000 70017. 97050 54940. 120000 6
## 10 9 0 0 0 0 NA 0 1
## 11 10 0 118000 59000 59000 83439. 118000 2
## 12 11 0 0 0 0 0 0 2
## 13 12 0 0 0 0 0 0 2
## 14 13 0 0 0 0 NA 0 1
## 15 15 146000 220000 183000 183000 52326. 74000 2
## 16 16 0 112000 72333. 105000 62740. 112000 3
## 17 18 0 0 0 0 NA 0 1
## 18 22 0 0 0 0 0 0 2
## # ℹ 1 more variable: Pgraduados <dbl>
ggplot(data = BaseF,
aes(x = Salario_Inicial))+
geom_density() +
labs(list(x = "Salario Inicial", y = "Exp_laboral"))+
theme(axis.title = element_text(face = "bold", colour = "#990000", size = 10), axis.text = element_text(size = 7),
plot.title = element_text(size = rel(1.2), colour = "blue"))

# Díagrama de cajas por Experiencia Laboral
ggplot(data = BaseF, aes(x = Exp_laboral, y = Salario_Inicial))+
geom_boxplot(aes(fill = Exp_laboral)) +
labs(x = "Exp_laboral", y = "Salario Inicial")
## Warning: Continuous x aesthetic
## ℹ did you forget `aes(group = ...)`?
## Warning: The following aesthetics were dropped during statistical transformation: fill.
## ℹ This can happen when ggplot fails to infer the correct grouping structure in
## the data.
## ℹ Did you forget to specify a `group` aesthetic or to convert a numerical
## variable into a factor?

# Diagrama de barras por Experiencia Laboral
Tabla <- BaseF %>%
select(Exp_laboral, Salario_Inicial) %>%
mutate(Exp_laboral = as.character(Exp_laboral)) %>%
group_by(Exp_laboral) %>%
summarise(
NGraduados = n(),
Promedio = mean(Salario_Inicial, na.rm = TRUE),
.groups = "drop"
) %>%
# Adiciona a linha total após a desagregação
bind_rows(data.frame(Exp_laboral = "Total",
NGraduados = nrow(BaseF),
Promedio = mean(BaseF$Salario_Inicial, na.rm = TRUE))) %>%
mutate(Promedio = round(Promedio, 2))
# Verificar a tabla resultante
Tabla
## # A tibble: 19 × 3
## Exp_laboral NGraduados Promedio
## <chr> <int> <dbl>
## 1 0 2 47500
## 2 1 20 41413.
## 3 10 2 59000
## 4 11 2 0
## 5 12 2 0
## 6 13 1 0
## 7 15 2 183000
## 8 16 3 72333.
## 9 18 1 0
## 10 2 60 61860
## 11 22 2 0
## 12 3 35 60992.
## 13 4 20 58000
## 14 5 19 38000
## 15 6 9 82389.
## 16 7 6 16333.
## 17 8 6 70017.
## 18 9 1 0
## 19 Total 193 54985.
# Grafico
ggplot(Tabla, aes(x = Exp_laboral, y = Promedio, fill = Exp_laboral)) +
geom_bar(stat = "identity") +
geom_text(aes(label = Promedio), position = position_stack(vjust = 0.5), size = 3) +
theme_minimal(base_size = 14) +
theme(
axis.title = element_text(face = "bold"),
plot.title = element_text(hjust = 0.5, face = "bold"),
aspect.ratio = 0.5
) +
labs(
title = "Salario Inicial por Experiencia laboral",
x = NULL,
y = "Salario Promedio"
)

glimpse(BaseF)
## Rows: 193
## Columns: 15
## $ ID <dbl> 1, 2, 3, 4, 6, 7, 8, 22, 23, 24, 25, 27, 28, 29, 31…
## $ Edad <dbl> 23, 24, 24, 24, 24, 25, 25, 27, 27, 28, 29, 31, 32,…
## $ Sexo <dbl> 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 2, 2, …
## $ GMAT_Total <dbl> 620, 610, 670, 570, 640, 610, 650, 740, 750, 540, 5…
## $ Perc_Cuant_GMAT <dbl> 77, 90, 99, 56, 82, 89, 88, 99, 99, 75, 56, 60, 99,…
## $ Perc_Verbal_GMAT <dbl> 87, 71, 78, 81, 89, 74, 89, 96, 98, 50, 87, 78, 99,…
## $ Perc_Gral_GMAT <dbl> 87, 87, 95, 75, 91, 87, 92, 99, 99, 65, 78, 72, 99,…
## $ Prom_Primavera <dbl> 3.40, 3.50, 3.30, 3.30, 3.90, 3.40, 3.30, 3.50, 3.4…
## $ Prom_Otoño <dbl> 3.00, 4.00, 3.25, 2.67, 3.75, 3.50, 3.75, 3.50, 3.5…
## $ QRanking <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
## $ Exp_laboral <dbl> 2, 2, 2, 1, 2, 2, 2, 3, 1, 5, 3, 10, 5, 7, 7, 9, 13…
## $ Lengua_materna <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, …
## $ Salario_Inicial <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
## $ Grado_Satisfacción <dbl> 7, 6, 6, 7, 6, 5, 6, 6, 5, 5, 5, 7, 5, 6, 6, 6, 5, …
## $ CAT_Salario <fct> 2. Sin salario, 2. Sin salario, 2. Sin salario, 2. …
#quintiles
BaseF1<-BaseF%>%
mutate(R_Exp_Laboral=ntile(Exp_laboral,5))
BaseF1%>%
group_by(R_Exp_Laboral)%>%
summarise(min_Exp_Laboral=min(Exp_laboral),
max_Exp_Laboral=max(Exp_laboral),
Ngraduados=n())
## # A tibble: 5 × 4
## R_Exp_Laboral min_Exp_Laboral max_Exp_Laboral Ngraduados
## <int> <dbl> <dbl> <int>
## 1 1 0 2 39
## 2 2 2 2 39
## 3 3 2 3 39
## 4 4 4 5 38
## 5 5 5 22 38
BaseF1$R_Exp_Laboral <- as.factor(BaseF1$R_Exp_Laboral)
levels(BaseF1$R_Exp_Laboral) <- c("[0,2)","[2,3)","[3,5)","[5,16)",">16")
attach(BaseF1)
## The following objects are masked from BaseF:
##
## CAT_Salario, Edad, Exp_laboral, GMAT_Total, Grado_Satisfacción, ID,
## Lengua_materna, Perc_Cuant_GMAT, Perc_Gral_GMAT, Perc_Verbal_GMAT,
## Prom_Otoño, Prom_Primavera, QRanking, Salario_Inicial, Sexo
##
## The following object is masked from Base2:
##
## ID
##
## The following object is masked from Base1:
##
## ID
glimpse(BaseF1)
## Rows: 193
## Columns: 16
## $ ID <dbl> 1, 2, 3, 4, 6, 7, 8, 22, 23, 24, 25, 27, 28, 29, 31…
## $ Edad <dbl> 23, 24, 24, 24, 24, 25, 25, 27, 27, 28, 29, 31, 32,…
## $ Sexo <dbl> 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 2, 2, …
## $ GMAT_Total <dbl> 620, 610, 670, 570, 640, 610, 650, 740, 750, 540, 5…
## $ Perc_Cuant_GMAT <dbl> 77, 90, 99, 56, 82, 89, 88, 99, 99, 75, 56, 60, 99,…
## $ Perc_Verbal_GMAT <dbl> 87, 71, 78, 81, 89, 74, 89, 96, 98, 50, 87, 78, 99,…
## $ Perc_Gral_GMAT <dbl> 87, 87, 95, 75, 91, 87, 92, 99, 99, 65, 78, 72, 99,…
## $ Prom_Primavera <dbl> 3.40, 3.50, 3.30, 3.30, 3.90, 3.40, 3.30, 3.50, 3.4…
## $ Prom_Otoño <dbl> 3.00, 4.00, 3.25, 2.67, 3.75, 3.50, 3.75, 3.50, 3.5…
## $ QRanking <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
## $ Exp_laboral <dbl> 2, 2, 2, 1, 2, 2, 2, 3, 1, 5, 3, 10, 5, 7, 7, 9, 13…
## $ Lengua_materna <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, …
## $ Salario_Inicial <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
## $ Grado_Satisfacción <dbl> 7, 6, 6, 7, 6, 5, 6, 6, 5, 5, 5, 7, 5, 6, 6, 6, 5, …
## $ CAT_Salario <fct> 2. Sin salario, 2. Sin salario, 2. Sin salario, 2. …
## $ R_Exp_Laboral <fct> "[0,2)", "[0,2)", "[0,2)", "[0,2)", "[0,2)", "[0,2)…
# Prueba de normalidad
by(data = BaseF1,INDICES = BaseF1$R_Exp_Laboral,FUN = function(x){ lillie.test(x$Salario_Inicial)})
## BaseF1$R_Exp_Laboral: [0,2)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: x$Salario_Inicial
## D = 0.37746, p-value = 1.199e-15
##
## ------------------------------------------------------------
## BaseF1$R_Exp_Laboral: [2,3)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: x$Salario_Inicial
## D = 0.29878, p-value = 1.539e-09
##
## ------------------------------------------------------------
## BaseF1$R_Exp_Laboral: [3,5)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: x$Salario_Inicial
## D = 0.29611, p-value = 2.328e-09
##
## ------------------------------------------------------------
## BaseF1$R_Exp_Laboral: [5,16)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: x$Salario_Inicial
## D = 0.36313, p-value = 4.73e-14
##
## ------------------------------------------------------------
## BaseF1$R_Exp_Laboral: >16
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: x$Salario_Inicial
## D = 0.33837, p-value = 4.229e-12
fligner.test(Salario_Inicial ~ R_Exp_Laboral,BaseF1)
##
## Fligner-Killeen test of homogeneity of variances
##
## data: Salario_Inicial by R_Exp_Laboral
## Fligner-Killeen:med chi-squared = 3.8503, df = 4, p-value = 0.4266
leveneTest(Salario_Inicial ~ R_Exp_Laboral,BaseF1,center = "median")
## Levene's Test for Homogeneity of Variance (center = "median")
## Df F value Pr(>F)
## group 4 0.8187 0.5147
## 188
kruskal.test(Salario_Inicial ~ R_Exp_Laboral, data = BaseF1)
##
## Kruskal-Wallis rank sum test
##
## data: Salario_Inicial by R_Exp_Laboral
## Kruskal-Wallis chi-squared = 6.7195, df = 4, p-value = 0.1515
#Pvalue<0.05
#Existe diferencia significativa en las medianas de por lo menos dos grupos.
#Comparaciones múltiples
pairwise_tests <- pairwise.wilcox.test(BaseF1$Salario_Inicial, BaseF$R_Exp_Laboral,
p.adjust.method = "bonf", paired = FALSE)
## Warning: Unknown or uninitialised column: `R_Exp_Laboral`.
# Extraer los p-valores ajustados
adjusted_p_values <- pairwise_tests$p.value
# Imprimir los resultados
adjusted_p_values
## <0 x 0 matrix>