Actividad 3

Problema: Rotación de cargo

Un una organización, se busca comprender y prever los factores que influyen en la rotación de empleados entre distintos cargos. La empresa ha recopilado datos históricos sobre el empleo de sus trabajadores, incluyendo variables como la antigüedad en el cargo actual, el nivel de satisfacción laboral, el salario actual, edad y otros factores relevantes. La gerencia planea desarrollar un modelo de regresión logística que permita estimar la probabilidad de que un empleado cambie de cargo en el próximo período y determinar cuales factores indicen en mayor proporción a estos cambios.

Con esta información, la empresa podrá tomar medidas proactivas para retener a su talento clave, identificar áreas de mejora en la gestión de recursos humanos y fomentar un ambiente laboral más estable y tranquilo. La predicción de la probabilidad de rotación de empleados ayudará a la empresa a tomar decisiones estratégicas informadas y a mantener un equipo de trabajo comprometido y satisfecho en sus roles actuales.

El objetivo de este informe es predecir la probabilidad de rotación de empleados y proponer acciones para minimizarla.

1. Selección de variables

Seleccione 3 variables categóricas (distintas de rotación) y 3 variables cuantitativas, que se consideren estén relacionadas con la rotación.

1.1 Variables categóricas

1 Horas Extra (Binaria Sí/No)

Se espera que las horas extra se relacionen con la rotación ya que las personas podrían desgastarse más al trabajar horas adicionales y descuidar aspectos personales. La hipótesis es que las personas que trabajan horas extra tienen mayor posibilidad de rotar que las que no trabajan extra.

2 Estado Civil

Se espera que el estado civil se relacione con la rotación ya que las personas casadas tienden a buscar mayor estabilidad laboral, mientras que los solteros pueden estar más abiertos a cambios de empleo. La hipótesis es que las personas solteras tienen mayor posibilidad de rotar que las personas casadas.

3 Viaje de Negocios

Se espera que la frecuencia de viaje de negocios se relacione con la rotación ya que los desplazamientos frecuentes pueden generar fatiga, afectar el equilibrio entre la vida personal y laboral y disminuir la satisfacción del empleado. La hipótesis es que las personas que viajan frecuentemente tienen mayor posibilidad de rotar que las que viajan raramente o nunca.

1.2 Variables cuantitativas

1 Antigüedad

Se espera que la antigüedad en la empresa se relacione con la rotación ya que los empleados nuevos aún no han desarrollado un sentido de pertenencia o compromiso con la organización. La hipótesis es que las personas con menor antigüedad tienen mayor posibilidad de rotar que las que llevan más tiempo en la empresa.

2 Distancia Casa-Trabajo

Se espera que la distancia del trabajo a la casa se relacione con la rotación ya que un genera tiempo perdido para la persona en los trayectos diarios al trabajo. Hipótesis: A mayor distancia entre casa y trabajo, mayor probabilidad de rotación, ya que esto puede generar incomodidad o desmotivación.

3 Ingreso Mensual

Se espera que el ingreso mensual se relacione con la rotación ya que los empleados con menores ingresos pueden sentirse menos valorados o buscar mejores oportunidades económicas en otras empresas. La hipótesis es que las personas con menor ingreso mensual tienen mayor posibilidad de rotar que las que tienen un ingreso más alto.

2. Análisis univariado

Realiza un análisis univariado (caracterización) de la información contenida en la base de datos rotacion.

Se codifica la variable rotación en donde Si = 1 y No = 0

2.1 Variables categóricas

2.2 Variables cuantitativas

El análisis exploratorio evidencia que la rotación laboral se ve influenciada por múltiples factores.

En particular, las variables categóricas como horas extra, estado civil, satisfacción laboral y ambiental, y cargo presentan diferencias marcadas entre quienes permanecen y quienes se retiran. De igual forma, las variables cuantitativas como antigüedad, antigüedad en el cargo e ingreso mensual muestran que los empleados con mayor permanencia, menor carga laboral y mejores ingresos tienden a quedarse.

3. Análisis bivariado

Realiza un análisis de bivariado en donde la variable respuesta sea rotacion codificada de la siguiente manera (𝑦=1 es si rotación, 𝑦=0 es no rotación). Con base en estos resultados identifique cuales son las variables determinantes de la rotación e interpretar el signo del coeficiente estimado. Compare estos resultados con la hipótesis planteada en el punto 2.

Se codifica la variable rotación en donde Si = 1 y No = 0

Resultados del Análisis Bivariado
Variable Coeficiente Signo p_valor Interpretacion
edad -0.0523 Negativo 0.0000 ↑ edad → ↓ rotación
ingreso_mensual -0.0001 Negativo 0.0000 ↑ ingreso_mensual → ↓ rotación
anos_experiencia -0.0777 Negativo 0.0000 ↑ anos_experiencia → ↓ rotación
antiguedad -0.0808 Negativo 0.0000 ↑ antiguedad → ↓ rotación
antiguedad_cargo -0.1463 Negativo 0.0000 ↑ antiguedad_cargo → ↓ rotación
anos_acargo_con_mismo_jefe -0.1414 Negativo 0.0000 ↑ anos_acargo_con_mismo_jefe → ↓ rotación
satisfaccion_ambiental -0.2531 Negativo 0.0001 ↑ satisfaccion_ambiental → ↓ rotación
satisfacion_laboral -0.2510 Negativo 0.0001 ↑ satisfacion_laboral → ↓ rotación
distancia_casa 0.0247 Positivo 0.0030 ↑ distancia_casa → ↑ rotación
equilibrio_trabajo_vida -0.2396 Negativo 0.0145 ↑ equilibrio_trabajo_vida → ↓ rotación
capacitaciones -0.1299 Negativo 0.0229 ↑ capacitaciones → ↓ rotación
trabajos_anteriores 0.0456 Positivo 0.0960 ↑ trabajos_anteriores → ↑ rotación
anos_ultima_promocion -0.0298 Negativo 0.2065 ↑ anos_ultima_promocion → ↓ rotación
educacion -0.0827 Negativo 0.2293 ↑ educacion → ↓ rotación
porcentaje_aumento_salarial -0.0101 Negativo 0.6054 ↑ porcentaje_aumento_salarial → ↓ rotación
rendimiento_laboral 0.0217 Positivo 0.9118 ↑ rendimiento_laboral → ↑ rotación
Chi-cuadrado: Relación entre variables categóricas y rotación
Variable p_valor Relacion_Significativa
viaje_de_negocios 0.0000
departamento 0.0045
campo_educacion 0.0068
genero 0.2906 No
estado_civil 0.0000
horas_extra 0.0000
cargo 0.0000
satisfaccion_ambiental 0.0001
satisfacion_laboral 0.0006

El análisis bivariado evidenció que las variables más asociadas a la rotación son: horas extra, estado civil, ingreso mensual, antigüedad, satisfacción ambiental y laboral. La rotación es mayor en empleados solteros, con baja antigüedad, menor salario y que realizan horas extra, así como en aquellos con menor satisfacción. Estos hallazgos permiten focalizar estrategias preventivas en segmentos más vulnerables.

4. Estimación del modelo

Realiza la estimación de un modelo de regresión logístico en el cual la variable respuesta es rotacion (𝑦=1 es si rotación, 𝑦=0 es no rotación) y las covariables las 6 seleccionadas en el punto 1. Interprete los coeficientes del modelo y la significancia de los parámetros.

4.1 Logit


=== RESUMEN MODELO LOGIT ===

Call:
glm(formula = rotacion ~ horas_extra + estado_civil + viaje_de_negocios + 
    antiguedad + distancia_casa + ingreso_mensual, family = binomial(link = "logit"), 
    data = data)

Coefficients:
                             Estimate Std. Error z value Pr(>|z|)    
(Intercept)                -1.391e+00  2.530e-01  -5.500 3.80e-08 ***
horas_extraSi               1.443e+00  1.574e-01   9.171  < 2e-16 ***
estado_civilDivorciado     -2.668e-01  2.296e-01  -1.162 0.245256    
estado_civilSoltero         9.019e-01  1.707e-01   5.284 1.27e-07 ***
viaje_de_negociosNo_Viaja  -1.340e+00  3.515e-01  -3.812 0.000138 ***
viaje_de_negociosRaramente -6.392e-01  1.800e-01  -3.551 0.000383 ***
antiguedad                 -4.711e-02  1.826e-02  -2.579 0.009898 ** 
distancia_casa              3.285e-02  9.243e-03   3.555 0.000378 ***
ingreso_mensual            -1.049e-04  2.474e-05  -4.241 2.23e-05 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 1298.6  on 1469  degrees of freedom
Residual deviance: 1088.7  on 1461  degrees of freedom
AIC: 1106.7

Number of Fisher Scoring iterations: 5
Confusion Matrix and Statistics

          Reference
Prediction    0    1
         0 1215  196
         1   18   41
                                          
               Accuracy : 0.8544          
                 95% CI : (0.8353, 0.8721)
    No Information Rate : 0.8388          
    P-Value [Acc > NIR] : 0.05381         
                                          
                  Kappa : 0.2274          
                                          
 Mcnemar's Test P-Value : < 2e-16         
                                          
            Sensitivity : 0.9854          
            Specificity : 0.1730          
         Pos Pred Value : 0.8611          
         Neg Pred Value : 0.6949          
             Prevalence : 0.8388          
         Detection Rate : 0.8265          
   Detection Prevalence : 0.9599          
      Balanced Accuracy : 0.5792          
                                          
       'Positive' Class : 0               
                                          

=== MÉTRICAS CLAVE ===
Precisión: 0.6949 
Recall (Sensibilidad): 0.173 
F1 Score: 0.277 
AUC: 0.7731 

1.  Precisión alta (0.6949): El modelo acierta en la mayoría de los casos cuando predice que un empleado va a rotar.

2.  Recall muy bajo (0.173): El modelo no detecta bien a los empleados que realmente se van, lo cual es crítico ya que el objetivo es prevenir la rotación.

3.  F1 Score bajo (0.277): Hay desequilibrio entre precisión y recall, lo que refleja bajo desempeño general del modelo para la clase minoritaria (los que rotan).

4.  AUC aceptable (0.7731): El modelo tiene capacidad moderada para distinguir entre quienes se quedan y quienes se van, pero no es óptimo.

5.  Alta sensibilidad (0.9854) vs. baja especificidad (0.173): Detecta casi todos los que se quedan (clase 0), pero falla al detectar los que se van (clase 1).

Aunque el modelo logístico tiene buena precisión y AUC, su bajo recall lo hace poco útil para detectar los empleados que realemnte se van. Se debe probar otros enfoques (como SMOTE) para mejorar la detección de empleados con alta probabilidad de rotación.

4.2 Weighted

Ahora usaremos el modelo con pesos (Weighted) para corregir el desbalance y comparar su desempeño


=== RESUMEN MODELO WEIGHTED ===

Call:
glm(formula = rotacion ~ horas_extra + estado_civil + viaje_de_negocios + 
    antiguedad + distancia_casa + ingreso_mensual, family = binomial(link = "logit"), 
    data = data, weights = pesos)

Coefficients:
                             Estimate Std. Error z value Pr(>|z|)    
(Intercept)                 1.520e-01  1.446e-01   1.051  0.29303    
horas_extraSi               1.356e+00  9.536e-02  14.214  < 2e-16 ***
estado_civilDivorciado     -3.676e-01  1.274e-01  -2.885  0.00392 ** 
estado_civilSoltero         8.099e-01  1.015e-01   7.983 1.43e-15 ***
viaje_de_negociosNo_Viaja  -1.400e+00  1.955e-01  -7.165 7.76e-13 ***
viaje_de_negociosRaramente -5.890e-01  1.111e-01  -5.302 1.14e-07 ***
antiguedad                 -2.097e-02  9.617e-03  -2.180  0.02923 *  
distancia_casa              2.818e-02  5.580e-03   5.051 4.40e-07 ***
ingreso_mensual            -9.557e-05  1.352e-05  -7.070 1.55e-12 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 3418.6  on 1469  degrees of freedom
Residual deviance: 2846.8  on 1461  degrees of freedom
AIC: 2808.2

Number of Fisher Scoring iterations: 5

=== MATRIZ DE CONFUSIÓN ===
Confusion Matrix and Statistics

          Reference
Prediction   0   1
         0 862  65
         1 371 172
                                          
               Accuracy : 0.7034          
                 95% CI : (0.6793, 0.7267)
    No Information Rate : 0.8388          
    P-Value [Acc > NIR] : 1               
                                          
                  Kappa : 0.2792          
                                          
 Mcnemar's Test P-Value : <2e-16          
                                          
            Sensitivity : 0.6991          
            Specificity : 0.7257          
         Pos Pred Value : 0.9299          
         Neg Pred Value : 0.3168          
             Prevalence : 0.8388          
         Detection Rate : 0.5864          
   Detection Prevalence : 0.6306          
      Balanced Accuracy : 0.7124          
                                          
       'Positive' Class : 0               
                                          

=== MÉTRICAS CLAVE MODELO WEIGHTED ===
Precisión: 0.3168 
Recall (Sensibilidad): 0.7257 
F1 Score: 0.441 
AUC: 0.769 

1.  Recall alto (0.7257): El modelo mejora significativamente la capacidad para detectar empleados que se van, lo cual es crítico para prevenir la rotación.

2.  Precisión baja (0.3168): Muchos empleados predichos como “rotación” en realidad no se van, lo que podría generar intervenciones innecesarias.

3.  F1 Score mejorado (0.441): Muestra un mejor equilibrio entre precisión y recall comparado con el modelo logit.

4.  AUC aceptable (0.769): El modelo tiene buena capacidad para distinguir entre empleados que se quedan y los que se van, aunque ligeramente menor que el modelo logit (0.7731) y SMOTE.

5.  Balanced Accuracy: 0.7124: Buen desempeño en ambas clases, mejorando el balance respecto al modelo logit.

El modelo Weighted mejora significativamente el recall y el F1 Score respecto al modelo base (logit), siendo más útil en escenarios donde es clave identificar posibles renuncias. 

4.3 SMOTE

Dado el desbalance entre las clases, SMOTE ayuda a mejorar la detección de empleados que podrían irse, sin afectar mucho la precisión para identificar a los que se quedan.


=== RESUMEN MODELO SMOTE ===

Call:
glm(formula = rotacion ~ ., family = binomial(link = "logit"), 
    data = data_smote)

Coefficients:
                             Estimate Std. Error z value Pr(>|z|)    
(Intercept)                -1.771e-01  1.658e-01  -1.068 0.285411    
horas_extraSi               1.624e+00  1.100e-01  14.766  < 2e-16 ***
estado_civilDivorciado     -3.263e-01  1.470e-01  -2.221 0.026378 *  
estado_civilSoltero         9.730e-01  1.182e-01   8.233  < 2e-16 ***
viaje_de_negociosNo_Viaja  -1.569e+00  2.333e-01  -6.726 1.74e-11 ***
viaje_de_negociosRaramente -6.370e-01  1.295e-01  -4.919 8.72e-07 ***
antiguedad                 -3.946e-02  1.146e-02  -3.442 0.000578 ***
distancia_casa              3.031e-02  6.437e-03   4.710 2.48e-06 ***
ingreso_mensual            -9.199e-05  1.511e-05  -6.086 1.16e-09 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 2986.2  on 2180  degrees of freedom
Residual deviance: 2419.3  on 2172  degrees of freedom
AIC: 2437.3

Number of Fisher Scoring iterations: 4

=== MATRIZ DE CONFUSIÓN SMOTE ===
Confusion Matrix and Statistics

          Reference
Prediction   0   1
         0 967 330
         1 266 618
                                          
               Accuracy : 0.7267          
                 95% CI : (0.7075, 0.7453)
    No Information Rate : 0.5653          
    P-Value [Acc > NIR] : < 2.2e-16       
                                          
                  Kappa : 0.4396          
                                          
 Mcnemar's Test P-Value : 0.009863        
                                          
            Sensitivity : 0.7843          
            Specificity : 0.6519          
         Pos Pred Value : 0.7456          
         Neg Pred Value : 0.6991          
             Prevalence : 0.5653          
         Detection Rate : 0.4434          
   Detection Prevalence : 0.5947          
      Balanced Accuracy : 0.7181          
                                          
       'Positive' Class : 0               
                                          

=== MÉTRICAS CLAVE MODELO SMOTE ===
Precisión: 0.6991 
Recall (Sensibilidad): 0.6519 
F1 Score: 0.6747 
AUC: 0.786 

1.  Alta sensibilidad (0.7843): El modelo detecta bien a los empleados que se van, lo cual es clave para tomar acciones preventivas.

2.  Buena precisión (0.6991): Gran proporción de empleados predichos como “rotación” realmente se van, lo que reduce el riesgo de intervenciones innecesarias.

3.  F1 Score sobresaliente (0.6747): Indica un buen equilibrio entre detectar y acertar, siendo el mejor valor entre los tres modelos.

4.  AUC más alto (0.786): El modelo tiene la mejor capacidad de discriminación entre quienes se quedan y quienes se van.

5.  Balanced Accuracy (0.7181): Desempeño equilibrado para ambas clases, mostrando robustez general del modelo.

El modelo SMOTE es el más balanceado y efectivo para el objetivo de predecir rotación. Tiene alto poder predictivo, reduce los falsos negativos y mantiene una buena precisión. 

5. Evaluación

Evaluar el poder predictivo del modelo con base en la curva ROC y el AUC.

Dado el desbalanceo que presenta la variable respuesta (Rotación) en la base de datos, se implementaron tres modelos para medir su rendimiento: Modelo original Logit, Modelo Weighted y un modelo utilizando SMOTE para compensar este desequilibrio.

La selección del mejor modelo depende directamente del objetivo del negocio el cual es la detección de los trabajadores que pueden rotar.

¿Qué es más costoso para la empresa?

•   Falsos Negativos (FN): Empleados que realmente iban a rotar pero el modelo no los identificó. Esto implica que no se ejecutaron acciones de retención a tiempo, lo que lleva pérdida de talento y altos costos de reemplazo.
•   Falsos Positivos (FP): Empleados que fueron identificados como posibles rotantes, pero que finalmente no se fueron. Aunque se realicen acciones preventivas innecesarias, el impacto es menor comparado con los Falsos Negativos.

Métricas más relevantes para este caso: • Recall (Sensibilidad): Qué tan bien el modelo detecta a los empleados que realmente se van. • F1 Score: Combina Precisión y Recall, dando una medida más equilibrada. • AUC: Representa la capacidad del modelo para distinguir correctamente entre empleados que se irán y los que no.

Modelo Precisión Recall F1 Score AUC Conclusión
Logit 0.6949 0.173 0.277 0.7731 Alta precisión, bajo recall
Weighted 0.3168 0.7257 0.441 0.769 Mejora el recall, pero pierde precisión
SMOTE 0.6991 0.6519 0.6747 0.786 Mejor desempeño general, modelo más balanceado

El modelo SMOTE demuestra ser la mejor alternativa para el objetivo de anticipar la rotación laboral. A pesar de tener un leve sacrificio en precisión frente al modelo Logit, logra un equilibrio óptimo entre precisión, recall y F1 Score, lo cual aumenta significativamente la capacidad preventiva del modelo, permitiendo una mejor toma de decisiones desde el área de gestión humana.

6. Predicciones

Realiza una predicción la probabilidad de que un individuo (hipotético) rote y defina un corte para decidir si se debe intervenir a este empleado o no (posible estrategia para motivar al empleado).

Dado que el costo de un falso negativo es más alto, necesitamos incrementar la detección de los empleados que se van, el umbral se establece en 0.4.

Se utilizarán las siguientes características de un empleado:

Probabilidad de rotación del nuevo empleado: 0.8663 

Con base en las características del empleado analizado, se obtiene una probabilidad de rotación de 0.8663, lo cual indica un riesgo alto de salida.

Este resultado sugiere que el empleado podría estar motivado a abandonar la organización, posiblemente debido a:

•   Antigüedad elevada en la empresa, que puede estar generando agotamiento profesional.
•   Estancamiento en el mismo rol, lo cual puede derivar en desmotivación por falta de nuevos desafíos.
•   Horas extra frecuentes, que suelen estar asociadas a sobrecarga laboral y desequilibrio vida-trabajo.

Estrategias de intervención sugeridas:

• Considerar al empleado para una rotación interna, lo que podría renovar su motivación y aumentar el sentido de progreso dentro de la organización.
• Evaluar si su salario está alineado con el de sus pares y considerar bonos o incentivos económicos como mecanismo de reconocimiento y retención.
•   Revisar las responsabilidades asignadas para reducir la necesidad de horas extra, contribuyendo al bienestar .

Estas acciones pueden contribuir a retener talento valioso, disminuir los costos asociados al reemplazo.

7. Conclusiones

En las conclusiones adicione una discusión sobre cuál sería la estrategia para disminuir la rotación en la empresa (con base en las variables que resultaron significativas en el punto 3).

Conclusión y Estrategia para Reducir la Rotación en la Empresa

El análisis estadístico ha identificado múltiples factores significativos asociados a la rotación de empleados. Entre las variables más relevantes destacan:

•   Edad, antigüedad, antigüedad en el cargo y años con el mismo jefe: A mayor estabilidad y permanencia, menor probabilidad de rotación.
•   Satisfacción ambiental y laboral, equilibrio trabajo-vida y capacitaciones: Niveles altos en estas variables reducen la intención de rotación.
•   Ingreso mensual también muestra una relación inversa con la rotación: salarios bajos están asociados a mayor salida.
•   Horas extra, viajes de negocios, estado civil y tipo de cargo también muestran asociación significativa con la rotación.

Estrategia de retención:

  1. Diseño de Planes de Carrera y Desarrollo Profesional.Crear programas de rotación interna para quienes llevan muchos años en el mismo cargo.

  2. Mejorar el Clima y Satisfacción Laboral. Implementar encuestas periódicas de satisfacción ambiental y laboral, con planes de acción sobre los puntos críticos.

  3. Relación Vida-Trabajo. Establecer políticas de control de horas extra y fomentar el equilibrio personal-laboral con horarios flexibles.(En todos los modelos de regresión la variable horas extra es la mas influyente en la rotación de los empleados)

  4. Capacitación y Formación Continua, dado que a mayores capacitaciones la rotación disminuye.

  5. Revisión de salarios, aumentos a mejor desempeño acompañado de incentivos.

  6. Diseñar acciones específicas para perfiles de alto riesgo de rotación con base en modelos predictivos. Las acciones se deberían concentrar en las variables que fueron más significativas en los modelos predictivos y que son gestionables para la empresa. (Horas extra, Ingreso mensual, Antigüedad / Antigüedad en el Cargo, viajes y capacitación )

  7. Evaluar e intervenir en áreas o departamentos con mayor rotación detectada.(Ventas y RH)

  8. Minimizar viajes innecesarios, ofrecer compensaciones por tiempo fuera de casa, o priorizar trabajo remoto si es posible.