Skip to content

marelycarcamo/Challenge_TelecomX_Parte2

Repository files navigation

🚀 Challenge TelecomX - Modelo Predictivo de Churn

Autor: [Marely Cárcamo Quisto]
Fecha: [Agosto-2025]
Repositorio: [Enlace a GitHub/GitLab]

📖 Índice

  1. Descripción del Proyecto
  2. Misión y Objetivos
  3. Instalación y Uso
  4. Flujo de Trabajo
  5. Hallazgos Clave
  6. Estructura del Repositorio
  7. Contribución
  8. Licencia

📌 Descripción del Proyecto

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 EDA
  • Challenge2.ipynb: Notebook de modelado predictivo
  • datos_tratados.csv: Dataset procesado
  • informe_churn.pdf: Informe ejecutivo con conclusiones

🧠 Misión y Objetivos

Misión

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.

Objetivos

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

🛠️ Instalación y Uso

Requisitos

Python Pandas Scikit-learn Matplotlib Plotly Imbalanced-Learn

# Instalar dependencias
pip install -r requirements.txt

Datos Originales

🔗 Dataset en formato JSON

Ejecución

jupyter notebook Challenge2.ipynb

🔍 Flujo de Trabajo

1. Preprocesamiento (Challenge1.ipynb)

  • Limpieza de datos (ej: "No internet service" → "No")
  • Creación/eliminación de variables (ej: tiene_Fibra_Optica)
  • Análisis exploratorio (EDA)

2. Visualización y Gráficos Relevantes

Gráfico 1. Distribución de la Cancelación

newplot_proporcion_churn

Gráfico 2. Tiempo Contrato X Cancelación

newplot_tiempoContrato_X_cancelacion

Gráfico 3. Gasto Total X Cancelación

newplot_gastoTotal_X_cancelacion

Gráfico 4. Correlación de Variables Categóricas

newplot_correlacion

Gráfico 5. Importancia de Variables

newplot_importancia_variables

3. Modelado Predictivo (Challenge2.ipynb)

# 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%

📊 Hallazgos Clave

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

📂 Estructura del Repositorio

.
├── 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

🤝 Contribución

  1. Haz fork del proyecto
  2. Crea tu rama (git checkout -b feature/nueva-mejora)
  3. Haz commit de tus cambios (git commit -m 'Add some feature')
  4. Haz push a la rama (git push origin feature/nueva-mejora)
  5. Abre un Pull Request

📄 Licencia

MIT


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published