Autor: [Marely Cárcamo Quisto]
Fecha: [Agosto-2025]
Repositorio: [Enlace a GitHub/GitLab]
- Descripción del Proyecto
- Misión y Objetivos
- Instalación y Uso
- Flujo de Trabajo
- Hallazgos Clave
- Estructura del Repositorio
- Contribución
- Licencia
Análisis predictivo de cancelación de clientes (Churn) para TelecomX, identificando factores clave y proponiendo estrategias de retención basadas en datos. El proyecto incluye:
- Limpieza y preparación de datos
- Análisis exploratorio (EDA)
- Modelado predictivo con machine learning
- Interpretación de resultados y recomendaciones estratégicas
Entregables:
Challenge1.ipynb: Notebook de limpieza y EDAChallenge2.ipynb: Notebook de modelado predictivodatos_tratados.csv: Dataset procesadoinforme_churn.pdf: Informe ejecutivo con conclusiones
Desarrollar modelos predictivos capaces de prever qué clientes tienen mayor probabilidad de cancelar sus servicios, permitiendo a TelecomX anticiparse al problema de la cancelación mediante un pipeline robusto para esta etapa inicial de modelado.
✔ Preparación de datos:
- Tratamiento de valores faltantes/anómalos
- Codificación y normalización de variables
✔ Análisis exploratorio:
- Correlación entre variables
- Selección de características
✔ Modelado predictivo:
- Entrenamiento de modelos de clasificación
- Evaluación con métricas (F1-Score, Recall, Precision)
✔ Interpretación:
- Importancia de variables en las predicciones
- Conclusiones estratégicas sobre factores de churn
# Instalar dependencias
pip install -r requirements.txtjupyter notebook Challenge2.ipynb- Limpieza de datos (ej:
"No internet service" → "No") - Creación/eliminación de variables (ej:
tiene_Fibra_Optica) - Análisis exploratorio (EDA)
# Pipeline completo
pipeline = Pipeline([
('scaler', StandardScaler()),
('model', RandomForestClassifier())
])- Balanceo de clases con SMOTE
- Entrenamiento de modelos (Árbol de Decisión + Random Forest)
- Evaluación con métricas:
- F1-Score: 0.84 (Random Forest)
- Recall: 83%
| Factor | Impacto en Churn | Estrategia Propuesta |
|---|---|---|
| Contrato mensual | 3× más riesgo | Ofertas anuales con 2 meses gratis |
| Primeros 6 meses | 70% cancelaciones | Onboarding personalizado |
| Gasto <$50 | 60% más churn | Paquetes "Básico Plus" |
| Pago con cheque electrónico | 25% más cancelaciones | Descuentos por pago automático |
.
├── data/
│ ├── raw/ # Datos originales (JSON)
│ └── processed/ # datos_tratados.csv
├── notebooks/
│ ├── Challenge1.ipynb # Limpieza y EDA
│ └── Challenge2.ipynb # Modelado predictivo
├── reports/
│ └── informe_churn.pdf # Análisis ejecutivo
├── requirements.txt # Dependencias
└── README.md # Este archivo
- Haz fork del proyecto
- Crea tu rama (
git checkout -b feature/nueva-mejora) - Haz commit de tus cambios (
git commit -m 'Add some feature') - Haz push a la rama (
git push origin feature/nueva-mejora) - Abre un Pull Request