Este documento tiene como objetivo mostrar qué meses y días son los de más ausentismo y por qué; pretende brindar recomendaciones para que la tasa de ausentismo sea mínima en la empresa.
## [1] "Absenteeism_at_work (1).xlsx"
## [2] "Absenteeism_at_work.csv"
## [3] "REPORTE-FINAL-TRABAJO-AUTÓNOMO.html"
## [4] "REPORTE-FINAL-TRABAJO-AUTÓNOMO.Rmd"
## [5] "REPORTE FINAL-TRABAJO AUTÓNOMO.Rmd"
## [6] "TRABAJO AUTONOMO R- ALEGRIA_EMILIA.R"
## [1] "Absenteeism_at_work" "Razones "
## Rows: 740
## Columns: 22
## $ ID <dbl> 11, 36, 3, 7, 11, 3, 10, 20, 1~
## $ Id_Razon <dbl> 26, 13, 23, 7, 23, 23, 22, 23,~
## $ Razón <chr> "Ausencia injustificada", "Enf~
## $ `Mes de ausencia` <dbl> 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, ~
## $ `Día de la semana` <dbl> 3, 3, 4, 5, 5, 6, 6, 6, 2, 2, ~
## $ Estación <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ~
## $ `Gasto de Transporte` <dbl> 289, 118, 179, 279, 289, 179, ~
## $ `Distancia de la residencia al trabajo` <dbl> 36, 13, 51, 5, 36, 51, 52, 50,~
## $ `Tiempo de servicio` <dbl> 13, 18, 18, 14, 13, 18, 3, 11,~
## $ Edad <dbl> 33, 50, 38, 39, 33, 38, 28, 36~
## $ `\r\nCarga de trabajo Promedio / día` <dbl> 239554, 239554, 239554, 239554~
## $ `Alcanzar la meta` <dbl> 97, 97, 97, 97, 97, 97, 97, 97~
## $ `Fallo disciplinario` <dbl> 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, ~
## $ Educación <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, ~
## $ Hijos <dbl> 2, 1, 0, 2, 2, 0, 1, 4, 2, 1, ~
## $ `Bebebor Social` <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, ~
## $ `Fumador Social` <dbl> 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, ~
## $ Mascota <dbl> 1, 0, 0, 0, 1, 0, 4, 0, 0, 1, ~
## $ Peso <dbl> 90, 98, 89, 68, 90, 89, 80, 65~
## $ Altura <dbl> 172, 178, 170, 168, 172, 170, ~
## $ `\r\nÍndice de masa corporal` <dbl> 30, 31, 31, 24, 30, 31, 27, 23~
## $ `Tiempo de absentismo en horas` <dbl> 4, 0, 2, 4, 2, 2, 8, 4, 40, 8,~
## Rows: 740
## Columns: 18
## $ ID <dbl> 11, 36, 3, 7, 11, 3, 10, 20, 14,~
## $ Id_Razon <dbl> 26, 13, 23, 7, 23, 23, 22, 23, 1~
## $ Razón <chr> "Ausencia injustificada", "Enfer~
## $ `Mes de ausencia` <dbl> 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,~
## $ `Día de la semana` <dbl> 3, 3, 4, 5, 5, 6, 6, 6, 2, 2, 2,~
## $ Estación <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,~
## $ `Gasto de Transporte` <dbl> 289, 118, 179, 279, 289, 179, 36~
## $ `Tiempo de servicio` <dbl> 13, 18, 18, 14, 13, 18, 3, 11, 1~
## $ Edad <dbl> 33, 50, 38, 39, 33, 38, 28, 36, ~
## $ `\r\nCarga de trabajo Promedio / día` <dbl> 239554, 239554, 239554, 239554, ~
## $ `Alcanzar la meta` <dbl> 97, 97, 97, 97, 97, 97, 97, 97, ~
## $ `Fallo disciplinario` <dbl> 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,~
## $ Educación <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1,~
## $ Hijos <dbl> 2, 1, 0, 2, 2, 0, 1, 4, 2, 1, 4,~
## $ `Bebebor Social` <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1,~
## $ Peso <dbl> 90, 98, 89, 68, 90, 89, 80, 65, ~
## $ `\r\nÍndice de masa corporal` <dbl> 30, 31, 31, 24, 30, 31, 27, 23, ~
## $ `Tiempo de absentismo en horas` <dbl> 4, 0, 2, 4, 2, 2, 8, 4, 40, 8, 8~
## Rows: 740
## Columns: 18
## $ ID <dbl> 11, 36, 3, 7, 11, 3, 10, 20, 14,~
## $ Id_Razon <dbl> 26, 13, 23, 7, 23, 23, 22, 23, 1~
## $ Razón <chr> "Ausencia injustificada", "Enfer~
## $ `Mes de ausencia` <dbl> 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,~
## $ `Día de la semana` <dbl> 3, 3, 4, 5, 5, 6, 6, 6, 2, 2, 2,~
## $ Estación <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,~
## $ `Gasto de Transporte` <fct> 289, 118, 179, 279, 289, 179, 36~
## $ `Tiempo de servicio` <dbl> 13, 18, 18, 14, 13, 18, 3, 11, 1~
## $ Edad <fct> 33, 50, 38, 39, 33, 38, 28, 36, ~
## $ `\r\nCarga de trabajo Promedio / día` <dbl> 239554, 239554, 239554, 239554, ~
## $ `Alcanzar la meta` <dbl> 97, 97, 97, 97, 97, 97, 97, 97, ~
## $ `Fallo disciplinario` <fct> 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,~
## $ Educación <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1,~
## $ Hijos <fct> 2, 1, 0, 2, 2, 0, 1, 4, 2, 1, 4,~
## $ `Bebebor Social` <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1,~
## $ Peso <dbl> 90, 98, 89, 68, 90, 89, 80, 65, ~
## $ `\r\nÍndice de masa corporal` <dbl> 30, 31, 31, 24, 30, 31, 27, 23, ~
## $ `Tiempo de absentismo en horas` <dbl> 4, 0, 2, 4, 2, 2, 8, 4, 40, 8, 8~
Tabla_datos_04 <- Tabla_datos_03 %>%
group_by(Razón) %>% mutate(Conteo_Faltas_Horas = sum(`Tiempo de absentismo en horas`)) %>% ungroup()
Tabla_datos_10 <- Tabla_datos_09 %>% group_by(`Tiempo de servicio`) %>%
mutate(Antiguedad_Trabajador = ifelse(`Tiempo de servicio` > 10, "Trabajador Antiguo", "Trabajador Nuevo")) %>% ungroup()
view(Tabla_datos_10)
Tabla_datos_11 <- Tabla_datos_10 %>% select(-`Tiempo de servicio`)
Tabla_datos_12 <- Tabla_datos_11 %>% group_by(Razón, `Mes de ausencia`) %>%
mutate(Conteo_Faltas_Mes = sum(Conteo_Faltas_Horas)) %>% ungroup()
Tabla_datos_13 <- Tabla_datos_12 %>% mutate(Faltas_Mes = ifelse(Conteo_Faltas_Horas >= 6, 1, 0))
Tabla_datos_14 <- Tabla_datos_13 %>% group_by(`Mes de ausencia`, Razón) %>%
mutate(Conteo_Faltas_por_mes = sum(Faltas_Mes)) %>% ungroup()
Tabla_datos_15 <- Tabla_datos_14 %>% group_by(Conteo_Faltas_por_mes) %>% arrange(-Conteo_Faltas_por_mes) %>% ungroup()
Tabla_datos_17 %>%
count(`Mes de ausencia`) %>% arrange(-n)
## # A tibble: 9 x 2
## `Mes de ausencia` n
## <int> <int>
## 1 7 209
## 2 8 180
## 3 6 129
## 4 5 119
## 5 2 69
## 6 9 22
## 7 3 8
## 8 11 3
## 9 1 1
Tabla_datos_17 %>%
count(`Día de la semana`) %>% arrange(-n)
## # A tibble: 5 x 2
## `Día de la semana` n
## <dbl> <int>
## 1 2 161
## 2 4 156
## 3 3 154
## 4 6 144
## 5 5 125
Tabla_datos_17 %>%
count(Razón) %>% arrange(-n)
## # A tibble: 27 x 2
## Razón n
## <chr> <int>
## 1 Consulta médica 159
## 2 Consulta dental 112
## 3 Fisioterapia 69
## 4 Enfermedades del sistema musculoesquelético y del tejido conectivo 58
## 5 Ausencia injustificada 44
## 6 Lesiones, intoxicaciones y algunas otras consecuencias de causas exter~ 40
## 7 Seguimiento del paciente 38
## 8 Examen de laboratorio 37
## 9 Enfermedades del sistema digestivo 26
## 10 Enfermedades del sistema respiratorio 25
## # ... with 17 more rows
## # A tibble: 22 x 2
## Edad n
## <fct> <int>
## 1 28 117
## 2 38 113
## 3 37 78
## 4 40 58
## 5 33 51
## 6 36 50
## 7 30 46
## 8 50 37
## 9 41 34
## 10 34 29
## # ... with 12 more rows
Tabla_datos_17 %>% group_by(`Mes de ausencia`, Conteo_Faltas_por_mes) %>% ungroup()
## # A tibble: 740 x 8
## Razón `Mes de ausencia` `Día de la seman~ Conteo_Faltas_p~ Conteo_Faltas_H~
## <chr> <int> <dbl> <dbl> <dbl>
## 1 Consul~ 8 4 159 424
## 2 Consul~ 8 5 159 424
## 3 Consul~ 8 6 159 424
## 4 Consul~ 8 6 159 424
## 5 Consul~ 8 4 159 424
## 6 Consul~ 8 6 159 424
## 7 Consul~ 8 4 159 424
## 8 Consul~ 8 3 159 424
## 9 Consul~ 8 6 159 424
## 10 Consul~ 8 5 159 424
## # ... with 730 more rows, and 3 more variables: Edad <fct>,
## # Bebedor_Social <chr>, Antiguedad_Trabajador <chr>
bar_mes_horas<-ggplot(data = Tabla_datos_17,
mapping = aes(x= `Mes de ausencia`, y= Conteo_Faltas_por_mes )) +
geom_line(color="purple") +
ggtitle("Faltas en horas por cada mes") +
ylab("Conteo de faltas por mes") +
xlab("Mes de ausencia")+ scale_x_continuous(breaks = c(1,2,3,4,5,6,7,8,9,10,11,12))
bar_mes_horas
Tabla_datos_18 <- Tabla_datos_17 %>%
group_by(`Día de la semana`) %>% count(`Día de la semana`) %>% arrange(-n) %>% ungroup()
bar_dia<-ggplot(data = Tabla_datos_18,
mapping = aes(x= `Día de la semana`, y= n)) +
geom_line(color="purple") +
ggtitle("Conteo de faltas por dia") +
ylab("Numero de faltas") +
xlab("Día de la semana")
bar_dia
Tabla_datos_19 <- Tabla_datos_17 %>% group_by(Razón, Conteo_Faltas_Horas) %>%
count(Razón, Conteo_Faltas_Horas) %>%
mutate(Razón=str_replace(Razón,"Ausencia injustificada", "Injustificada")) %>%
mutate(Razón=str_replace(Razón,"Consulta ciertas afecciones originadas en el período perinatal", "Embarazo"))%>%
mutate(Razón=str_replace(Razón,"Consulta Ciertas enfermedades infecciosas y parasitarias", "Infecciones")) %>%
mutate(Razón=str_replace(Razón,"Embarazo, parto y puerperio", "Parto")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades de la piel y del tejido subcutáneo.", "Enfermedades piel")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades de la sangre y de los órganos hematopoyéticos y determinados trastornos que afectan al mecanismo inmunitario.", "Enfermedades sangre")) %>%
mutate(Razón=str_replace(Razón,"Malformaciones congénitas, deformaciones y anomalías cromosómicas", "Congenitas")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades endocrinas, nutricionales y metabólicas", "Enfermedades nutricionales")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades del sistema musculoesquelético y del tejido conectivo", "Enfermedades huesos")) %>%
mutate(Razón=str_replace(Razón,"Factores que influyen en el estado de salud y el contacto con los servicios de salud.", "Otros")) %>%
mutate(Razón=str_replace(Razón,"Lesiones, intoxicaciones y algunas otras consecuencias de causas externas", "Lesiones")) %>%
mutate(Razón=str_replace(Razón,"Síntomas, signos y hallazgos clínicos y de laboratorio anormales, no clasificados en otra parte", "Examenes Laboratorio")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades del oído y apófisis mastoides", "Enfermedades oido")) %>%
mutate(Razón=str_replace(Razón,"Trastornos mentales y del comportamiento", "Trastornos mentales")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades", "E.")) %>%
mutate(Razón=str_remove(Razón,"del")) %>%
mutate(Razón=str_replace(Razón,"sistema", "sist.")) %>%
ungroup()
view(Tabla_datos_19)
col_razonHoras <- ggplot(data = Tabla_datos_19, mapping = aes(x = Razón, y = Conteo_Faltas_Horas))+
geom_col(fill = "purple",
alpha = 0.5,
color = "purple") +
xlab("Razón") +
ylab("Horas de falta") +
ggtitle("Razon vs Horas de falta") +
theme_gray()+ theme(axis.text.x = element_text(angle = 90))
col_razonHoras
Tabla_datos_20 <- Tabla_datos_17 %>% group_by(Razón) %>%
count(Razón) %>%
mutate(Razón=str_replace(Razón,"Ausencia injustificada", "Injustificada")) %>%
mutate(Razón=str_replace(Razón,"Consulta ciertas afecciones originadas en el período perinatal", "Embarazo"))%>%
mutate(Razón=str_replace(Razón,"Consulta Ciertas enfermedades infecciosas y parasitarias", "Infecciones")) %>%
mutate(Razón=str_replace(Razón,"Embarazo, parto y puerperio", "Parto")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades de la piel y del tejido subcutáneo.", "Enfermedades piel")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades de la sangre y de los órganos hematopoyéticos y determinados trastornos que afectan al mecanismo inmunitario.", "Enfermedades sangre")) %>%
mutate(Razón=str_replace(Razón,"Malformaciones congénitas, deformaciones y anomalías cromosómicas", "Congenitas")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades endocrinas, nutricionales y metabólicas", "Enfermedades nutricionales")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades del sistema musculoesquelético y del tejido conectivo", "Enfermedades huesos")) %>%
mutate(Razón=str_replace(Razón,"Factores que influyen en el estado de salud y el contacto con los servicios de salud.", "Otros")) %>%
mutate(Razón=str_replace(Razón,"Lesiones, intoxicaciones y algunas otras consecuencias de causas externas", "Lesiones")) %>%
mutate(Razón=str_replace(Razón,"Síntomas, signos y hallazgos clínicos y de laboratorio anormales, no clasificados en otra parte", "Examenes Laboratorio")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades del oído y apófisis mastoides", "Enfermedades oido")) %>%
mutate(Razón=str_replace(Razón,"Trastornos mentales y del comportamiento", "Trastornos mentales")) %>%
mutate(Razón=str_replace(Razón,"Enfermedades", "E.")) %>%
mutate(Razón=str_remove(Razón,"del")) %>%
mutate(Razón=str_replace(Razón,"sistema", "sist.")) %>%
ungroup()
view(Tabla_datos_20)
col_razonVeces <- ggplot(data = Tabla_datos_20, mapping = aes(x = Razón, y = n))+
geom_col(fill = "blue",
alpha = 0.5,
color = "purple") +
xlab("Razón") +
ylab("Cantidad de veces faltadas") +
ggtitle("Conteo faltas por razón de ausentismo") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
col_razonVeces
1.La razón por la que se falta más veces es por consulta médica.
Tabla_datos_23 <- Tabla_datos_17 %>%
count(Edad)
map_edad <- ggplot(data = Tabla_datos_23,
mapping = aes(x = Edad,
y = n,
fill = n)) +
geom_tile() +
scale_fill_gradient(low = "green", high = "red") +
ylab("# de veces que falta") +
xlab("Edad") +
labs(fill = "# de faltas") +
ggtitle("Faltas por edad") +
theme_minimal()
map_edad
Estas medidas ayudarán a que el ausentismo baje en la empresa, aumente la productividad y que el gasto por no tener a los colaboradores trabajando sea menor.