Análise completa de churn da TelecomX utilizando processo ETL + EDA, com dataset preparado para Machine Learning.
- Sobre o Projeto
- Minha Jornada
- Extensão: Preparação para ML
- Principais Resultados
- Visualizações
- Estrutura do Repositório
- Tecnologias Utilizadas
- Como Executar
- Dataset
- Metodologia
- Insights e Recomendações
- Declaração de Uso de IA
- Autor
- Licença
Este projeto foi desenvolvido como parte do Challenge Data Science da Alura em parceria com o programa Oracle Next Education (ONE).
A TelecomX é uma empresa de telecomunicações que enfrenta um desafio crítico: alto índice de cancelamento de contratos (churn). Compreender os fatores que levam à evasão é essencial para desenvolver estratégias de retenção eficazes.
- Extrair dados de clientes via API REST
- Transformar e limpar dados para análise
- Identificar padrões que diferenciam clientes que cancelam vs. permanecem
- Gerar insights acionáveis para retenção
Sou gestor financeiro com 20 anos de experiência em gestão empresarial, atualmente em transição de carreira para Data Science e Cloud Computing. Este projeto faz parte da minha formação no programa Oracle Next Education (ONE) e do MBA em IA & Análise de Dados (SENAC).
Meu objetivo aqui foi aplicar fundamentos de ETL e análise exploratória em um cenário realista, integrando minha visão de negócios com habilidades técnicas em desenvolvimento. Como iniciante em programação, busco aprender continuamente e trocar conhecimento com a comunidade.
Este repositório representa não apenas a entrega de um challenge, mas um passo concreto na construção do meu portfólio técnico — com transparência sobre meu nível atual e compromisso com a evolução constante.
Após concluir a análise exploratória exigida pelo Challenge, identifiquei uma oportunidade de agregar valor: deixar o dataset pronto para modelagem preditiva. Essa extensão segue o framework CRISP-DM e reflete minha visão de entregar soluções completas, não apenas tarefas isoladas.
O CRISP-DM (Cross-Industry Standard Process for Data Mining) é reconhecido como o modelo de analytics mais utilizado na indústria:
┌─────────────────────────────────────────────────────────────────┐
│ CRISP-DM │
├─────────────────────────────────────────────────────────────────┤
│ 1. Business Understanding ✅ Concluído │
│ 2. Data Understanding ✅ Concluído (EDA) │
│ 3. Data Preparation ✅ Concluído (ETL) │
│ 4. Modeling 🔜 Dataset preparado para esta │
│ 5. Evaluation etapa │
│ 6. Deployment │
└─────────────────────────────────────────────────────────────────┘
| Preparação | Descrição | Benefício para ML |
|---|---|---|
| Tipos corretos | Todas as colunas com dtype apropriado | Evita erros de processamento |
| Sem valores nulos | Missing values tratados | Modelos não aceitam NaN |
| Colunas traduzidas | Nomes em português padronizados | Facilita interpretação |
| Variável target clara | Coluna cancelou (Yes/No) |
Pronta para classificação |
| Dataset exportado | CSV limpo disponível | Importação direta |
- CRISP-DM Methodology - Business Analytics Institute
- Data Science Workflow - IABAC
- CRISP-DM for Data Science - Data Science PM
| Métrica | Valor |
|---|---|
| Taxa de Churn | 26,54% |
| Total de Clientes Analisados | 7.043 |
| Clientes que Cancelaram | 1.869 |
| Perda Anual Estimada | US$ 2,86 milhões |
- 📱 Contrato mensal tem taxa de churn de 42% (vs. 3% em contratos de 2 anos)
- 🌐 Fibra óptica apresenta churn de 42% (vs. 19% em DSL)
- 👤 Clientes novos (0-12 meses) têm 48% de probabilidade de cancelar
- 💳 Boleto eletrônico está associado a 45% de churn
telecomx-churn-analysis/
│
├── assets/
│ └── images/ # Gráficos e visualizações
│ ├── churn_geral.png
│ ├── churn_contrato.png
│ └── churn_tempo.png
│
├── data/
│ └── processed/ # Dados tratados
│ └── telecom_limpo.csv
│
├── docs/ # Documentação adicional
│ └── Challenge Telecom X - Análise de evasão de clientes.pdf
│
├── notebooks/
│ └── analise_churn_telecom.ipynb # Notebook principal
│
├── .gitignore # Arquivos ignorados pelo Git
├── LICENSE # Licença MIT
├── README.md # Este arquivo
└── requirements.txt # Dependências do projeto
| Categoria | Tecnologia | Versão | Uso |
|---|---|---|---|
| Linguagem | Python | 3.10+ | Base do projeto |
| Dados | Pandas | 2.0+ | Manipulação e análise |
| Dados | NumPy | 1.24+ | Operações numéricas |
| Visualização | Matplotlib | 3.7+ | Gráficos estáticos |
| Visualização | Seaborn | 0.12+ | Visualização estatística |
| Visualização | Plotly | 5.18 | Gráficos interativos |
| HTTP | Requests | 2.28+ | Extração via API |
| Ambiente | Jupyter | - | Desenvolvimento interativo |
- Python 3.10 ou superior
- pip (gerenciador de pacotes)
-
Clone o repositório
git clone https://github.com/thedrads/telecomx-churn-analysis.git cd telecomx-churn-analysis -
Crie um ambiente virtual (recomendado)
python -m venv venv source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows
-
Instale as dependências
pip install -r requirements.txt
-
Execute o notebook
jupyter notebook notebooks/analise_churn_telecom.ipynb
Dados extraídos via API REST do repositório do Challenge Alura (API fictícia para fins educacionais).
- Registros: 7.043 clientes
- Variáveis: 21 características
| Variável Original | Variável Traduzida | Descrição |
|---|---|---|
| customerID | id_cliente | Identificador único |
| gender | genero | Masculino/Feminino |
| SeniorCitizen | idoso | Cliente 65+ anos (0/1) |
| Partner | tem_parceiro | Possui parceiro (Yes/No) |
| Dependents | tem_dependentes | Possui dependentes (Yes/No) |
| tenure | meses_cliente | Tempo como cliente (meses) |
| PhoneService | servico_telefone | Serviço telefônico (Yes/No) |
| MultipleLines | linhas_multiplas | Múltiplas linhas |
| InternetService | tipo_internet | DSL/Fiber optic/No |
| OnlineSecurity | seguranca_online | Segurança online |
| OnlineBackup | backup_online | Backup online |
| DeviceProtection | protecao_dispositivo | Proteção de dispositivo |
| TechSupport | suporte_tecnico | Suporte técnico |
| StreamingTV | streaming_tv | Streaming de TV |
| StreamingMovies | streaming_filmes | Streaming de filmes |
| Contract | tipo_contrato | Mensal/Anual/Bienal |
| PaperlessBilling | fatura_digital | Fatura digital (Yes/No) |
| PaymentMethod | metodo_pagamento | Método de pagamento |
| MonthlyCharges | cobranca_mensal | Cobrança mensal (USD) |
| TotalCharges | cobranca_total | Cobrança total (USD) |
| Churn | cancelou | Cancelou contrato (Yes/No) |
O projeto segue o processo ETL + EDA, alinhado às primeiras fases do framework CRISP-DM:
- Conexão com API REST
- Download de dados JSON
- Conversão para DataFrame
- Normalização de estruturas aninhadas
- Tradução de colunas para português
- Tratamento de valores ausentes
- Conversão de tipos de dados
- Remoção de duplicatas
- Exportação do dataset limpo (CSV)
- Validação de integridade
- Análise univariada e bivariada
- Visualizações estatísticas
- Identificação de padrões de churn
- Geração de insights acionáveis
| Fator | Taxa de Churn | Recomendação |
|---|---|---|
| Contrato mensal | 42% | Incentivar migração para contratos anuais |
| Fibra óptica | 42% | Investigar qualidade do serviço |
| Sem suporte técnico | 41% | Incluir suporte básico gratuito |
| Clientes novos (0-12 meses) | 48% | Programa de onboarding intensivo |
| Boleto eletrônico | 45% | Oferecer desconto para débito automático |
Com base na minha experiência em gestão financeira, destaco que a perda anual estimada de US$ 2,86M representa não apenas receita perdida, mas também custo de aquisição desperdiçado. Em telecomunicações, o CAC (Customer Acquisition Cost) tipicamente varia de 5x a 25x o valor da retenção — o que torna programas de fidelização significativamente mais rentáveis que campanhas de aquisição.
A concentração de churn em clientes novos (0-12 meses) sugere falhas no processo de onboarding e primeira experiência, pontos críticos onde intervenções têm alto ROI.
- Curto Prazo: Campanhas de retenção para clientes com contrato mensal
- Médio Prazo: Revisão da qualidade do serviço de fibra óptica
- Longo Prazo: Desenvolvimento de modelo preditivo de churn (dataset já preparado)
Este projeto foi desenvolvido com assistência de Inteligência Artificial Generativa.
- Estruturação e organização do código seguindo PEP 8 e PEP 257
- Revisão de boas práticas em Data Science
- Sugestões de formatação e documentação
- Assistência na análise metodológica
Todo o conteúdo final — códigos, análises, insights, decisões técnicas e conclusões — foi integralmente revisado, validado e aprovado pelo autor. A IA foi utilizada como ferramenta de apoio ao desenvolvimento, complementando o trabalho intelectual, não o substituindo.
- Princeton University - Disclosing the Use of AI
- Arizona State University - Acknowledging AI Usage
- AID Framework - AI Disclosure
Este projeto está alinhado à minha formação contínua em IA aplicada aos negócios, incluindo cursos como IA Aplicada aos Negócios – FGV e Generative AI for Productivity – Cornell.
![]() Fábio Andrade |
Este projeto está sob a licença MIT — consulte LICENSE para detalhes.
Desenvolvido por Fábio Andrade | Aberto a feedbacks e contribuições



