Este informe presenta un análisis completo del dataset de abandono, incluyendo:
El objetivo es construir una base sólida para la modelización posterior.
El conjunto de librerías cargado (dplyr, ggplot2, scales, gridExtra) permite realizar tanto la exploración de datos como la construcción de visualizaciones avanzadas. Este conjunto asegura un flujo de análisis reproducible y con herramientas suficientes para manipulación, gráficos, facetas y combinación de paneles.
## Vista previa del dataset:
## id gender SeniorCitizen Partner Dependents tenure PhoneService MultipleLines
## 1 0 Male 0 Yes Yes 29 Yes No
## 2 1 Male 0 Yes Yes 58 Yes No
## 3 2 Male 0 Yes No 58 Yes Yes
## InternetService OnlineSecurity OnlineBackup DeviceProtection TechSupport
## 1 DSL Yes No Yes Yes
## 2 DSL Yes Yes No Yes
## 3 Fiber optic No Yes No No
## StreamingTV StreamingMovies Contract PaperlessBilling
## 1 No No One year Yes
## 2 Yes No Two year No
## 3 Yes Yes Month-to-month Yes
## PaymentMethod MonthlyCharges TotalCharges Churn
## 1 Mailed check 60.1 1653.85 No
## 2 Credit card (automatic) 69.5 3778.20 No
## 3 Electronic check 100.4 5841.35 No
##
## Estructura:
## 'data.frame': 594194 obs. of 21 variables:
## $ id : int 0 1 2 3 4 5 6 7 8 9 ...
## $ gender : chr "Male" "Male" "Male" "Female" ...
## $ SeniorCitizen : int 0 0 0 0 0 0 0 0 1 0 ...
## $ Partner : chr "Yes" "Yes" "Yes" "No" ...
## $ Dependents : chr "Yes" "Yes" "No" "No" ...
## $ tenure : int 29 58 58 1 1 1 24 72 1 55 ...
## $ PhoneService : chr "Yes" "Yes" "Yes" "Yes" ...
## $ MultipleLines : chr "No" "No" "Yes" "No" ...
## $ InternetService : chr "DSL" "DSL" "Fiber optic" "Fiber optic" ...
## $ OnlineSecurity : chr "Yes" "Yes" "No" "No" ...
## $ OnlineBackup : chr "No" "Yes" "Yes" "No" ...
## $ DeviceProtection: chr "Yes" "No" "No" "No" ...
## $ TechSupport : chr "Yes" "Yes" "No" "No" ...
## $ StreamingTV : chr "No" "Yes" "Yes" "No" ...
## $ StreamingMovies : chr "No" "No" "Yes" "No" ...
## $ Contract : chr "One year" "Two year" "Month-to-month" "Month-to-month" ...
## $ PaperlessBilling: chr "Yes" "No" "Yes" "Yes" ...
## $ PaymentMethod : chr "Mailed check" "Credit card (automatic)" "Electronic check" "Electronic check" ...
## $ MonthlyCharges : num 60.1 69.5 100.4 69.7 70.5 ...
## $ TotalCharges : num 1653.8 3778.2 5841.4 70.7 70.5 ...
## $ Churn : chr "No" "No" "No" "Yes" ...
##
## Clases:
## sapply(data, class)
## id integer
## gender character
## SeniorCitizen integer
## Partner character
## Dependents character
## tenure integer
## PhoneService character
## MultipleLines character
## InternetService character
## OnlineSecurity character
## OnlineBackup character
## DeviceProtection character
## TechSupport character
## StreamingTV character
## StreamingMovies character
## Contract character
## PaperlessBilling character
## PaymentMethod character
## MonthlyCharges numeric
## TotalCharges numeric
## Churn character
##
## Valores faltantes en el dataframe:
## [1] 0
## tenure MonthlyCharges TotalCharges
## Min. : 1.00 Min. : 18.25 Min. : 18.8
## 1st Qu.:12.00 1st Qu.: 29.90 1st Qu.: 639.6
## Median :35.00 Median : 74.10 Median :1433.7
## Mean :36.58 Mean : 65.87 Mean :2494.4
## 3rd Qu.:62.00 3rd Qu.: 90.80 3rd Qu.:4263.8
## Max. :72.00 Max. :118.75 Max. :8684.8
##
## Valores NA por columna:
## id gender SeniorCitizen Partner
## 0 0 0 0
## Dependents tenure PhoneService MultipleLines
## 0 0 0 0
## InternetService OnlineSecurity OnlineBackup DeviceProtection
## 0 0 0 0
## TechSupport StreamingTV StreamingMovies Contract
## 0 0 0 0
## PaperlessBilling PaymentMethod MonthlyCharges TotalCharges
## 0 0 0 0
## Churn
## 0
gender no muestra diferencia
significativa entre categorías.SeniorCitizen presenta abandono ligeramente
mayor en ciudadanos mayores.Partner y Dependents muestran
menor abandono cuando el cliente tiene familia o
dependientes, posiblemente por mayor estabilidad económica.Contract es uno de los factores más determinantes:
PaperlessBilling: ligera asociación con abandono
aumentado.PaymentMethod: el método Electronic
check se asocia fuertemente a abandono elevado.OnlineSecurity, TechSupport) se asocia a
mayor abandono.TotalCharges, los clientes que hacen abandono
muestran acumulados bajos → consistente con permanencia temprano.TotalCharges y permanencia (cercano al 0.77),
debido a la naturaleza acumulativa.MonthlyCharges muestra correlación moderada con
TotalCharges.TotalCharges debería manejarse con
precaución (colinealidad).Clientes con contratos Month-to-month tienen picos de abandono marcados en permanencias bajos.
Contratos anuales o de dos años muestran densidades más estables y abandono mucho menor.
Electronic check destaca como el método con
mayor abandono, independientemente de
permanencia.
Métodos automáticos (Bank transfer,
Credit card) presentan patrones más
estables, con menos abandono.
## id gender SeniorCitizen Partner Dependents tenure PhoneService MultipleLines
## 1 0 Male No Yes Yes 29 Yes No
## 2 1 Male No Yes Yes 58 Yes No
## 3 2 Male No Yes No 58 Yes Yes
## 4 3 Female No No No 1 Yes No
## 5 4 Female No No No 1 Yes No
## 6 5 Male No Yes Yes 1 Yes No
## InternetService OnlineSecurity OnlineBackup DeviceProtection
## 1 DSL Yes No Yes
## 2 DSL Yes Yes No
## 3 Fiber optic No Yes No
## 4 Fiber optic No No No
## 5 Fiber optic No No No
## 6 No No internet service No internet service No internet service
## TechSupport StreamingTV StreamingMovies Contract
## 1 Yes No No One year
## 2 Yes Yes No Two year
## 3 No Yes Yes Month-to-month
## 4 No No No Month-to-month
## 5 No No No Month-to-month
## 6 No internet service No internet service No internet service Month-to-month
## PaperlessBilling PaymentMethod MonthlyCharges TotalCharges Churn
## 1 Yes Mailed check 60.10 1653.85 No
## 2 No Credit card (automatic) 69.50 3778.20 No
## 3 Yes Electronic check 100.40 5841.35 No
## 4 Yes Electronic check 69.70 70.70 Yes
## 5 Yes Electronic check 70.45 70.45 Yes
## 6 Yes Bank transfer (automatic) 20.20 20.20 No
## Total_Servicios Pago_Promedio_Historico Diferencia_Precio
## 1 3 57.02931 3.070690
## 2 4 65.14138 4.358621
## 3 3 100.71293 -0.312931
## 4 0 70.70000 -1.000000
## 5 0 70.45000 0.000000
## 6 0 20.20000 0.000000
## Riesgo_Contrato_Pago
## 1 Riesgo Medio (Otros)
## 2 Bajo Riesgo (Largo Plazo + Auto)
## 3 Alto Riesgo (Mes a mes + Cheque Elec)
## 4 Alto Riesgo (Mes a mes + Cheque Elec)
## 5 Alto Riesgo (Mes a mes + Cheque Elec)
## 6 Riesgo Medio (Otros)
Total_Servicios: abandono prácticamente desaparece en
clientes con más de 4 servicios.Diferencia_Precio: curvas KDE muestran que los clientes
abandono pagan más que su histórico → fuerte
predictor.Riesgo_Contrato_Pago: la nueva variable estratifica
perfectamente los niveles de riesgo creados, validando su utilidad para
modelado.## Ignoring unknown labels:
## • colour : "Método:"
Para validar matemáticamente los hallazgos del análisis exploratorio, se entrenó un modelo de Machine Learning (XGBoost) utilizando las variables originales y las creadas en la fase de Feature Engineering. Los resultados son altamente concluyentes:
## Cargando paquete requerido: data.table
##
## Adjuntando el paquete: 'data.table'
## The following object is masked from 'package:purrr':
##
## transpose
## The following objects are masked from 'package:dplyr':
##
## between, first, last
Importancia de Variables (Feature Importance):
El modelo confirma que la variable sintética Riesgo_Contrato_Pago (específicamente la categoría “Mes a mes + Cheque Elec”) es, con gran diferencia, el predictor más fuerte de abandono. Le siguen en importancia la antigüedad del cliente (tenure) , los contratos de dos años (ContractTwo year) y el servicio de fibra óptica (InternetServiceFiber optic). Esto valida rotundamente el esfuerzo invertido en la creación de nuevas variables combinadas.
## Scale for fill is already present.
## Adding another scale for fill, which will replace the existing scale.
Capacidad Predictiva (Curva ROC y AUC):
El modelo alcanza un AUC (Área bajo la curva) de 0.913. En problemas de retención de clientes, un AUC superior a 0.85 se considera excelente. Esto indica que nuestro modelo tiene una capacidad del 91.3% para distinguir correctamente entre un cliente que se va a dar de baja y uno que permanecerá activo.
Matriz de Confusión:
La matriz demuestra que el modelo es capaz de identificar correctamente un gran volumen de casos positivos y negativos. Aunque existe una proporción de falsos positivos y falsos negativos (normal en clases desbalanceadas), el alto rendimiento global asegura que las campañas de retención basadas en este modelo tendrán una altísima tasa de acierto, optimizando el presupuesto de marketing
El presente estudio proporciona una radiografía precisa y validada matemáticamente sobre los factores que impulsan la pérdida de clientes (churn). A través de un análisis exploratorio profundo y la posterior validación mediante un modelo predictivo avanzado (XGBoost) , se han identificado patrones críticos con alta consistencia interna.
El “Valle de la Muerte” y la Antigüedad: El análisis confirma que la permanencia temprana es el factor de riesgo más crítico. Las tasas de abandono se disparan en los primeros seis meses , sugiriendo que la fricción en el proceso de onboarding o una brecha en las expectativas iniciales son letales para la retención. El algoritmo de Machine Learning confirmó que la variable tenure es el segundo factor con mayor peso predictivo de todo el conjunto de datos.
La Tormenta Perfecta: Contrato y Método de Pago: La fase de Feature Engineering demostró su inmenso valor al crear la variable Riesgo_Contrato_Pago. El modelo XGBoost determinó que la combinación de contratos Month-to-month con pagos mediante Electronic check es el predictor número uno de abandono. Los clientes bajo esta modalidad presentan una inestabilidad sistémica frente a aquellos con contratos anuales y pagos automáticos.
El Efecto “Pegamento” de los Servicios y la Sensibilidad al Precio: Se ha evidenciado una relación inversamente proporcional entre el volumen de servicios contratados y la probabilidad de fuga: a mayor cantidad de servicios (soporte, seguridad, streaming), menor es el abandono. Adicionalmente, variables como el incremento reciente en la tarifa mensual (Diferencia_Precio) actúan como un fuerte catalizador de la baja.
Fiabilidad del Modelo: El ecosistema analítico construido culminó en un modelo predictivo con un AUC de 0.913. Este nivel de precisión superior al 91% indica que la empresa ya no necesita actuar a ciegas. Poseemos una herramienta estadísticamente robusta capaz de predecir la fuga antes de que ocurra.-