A estrutura do projeto está organizada em diretórios para dados, notebooks de análise e relatórios finais:
.
├── data
│ ├── clean.csv # Dados processados, prontos para modelagem
│ └── Mall_Customers.csv # Dataset original
├── notebooks
│ ├── eda.ipynb # Notebook de Análise Exploratória dos Dados (EDA)
│ └── models.ipynb # Notebook de Modelagem e Agrupamento (Clustering)
└── reports
├── report_eda.md # Relatório detalhado da EDA
└── report_models.md # Relatório detalhado dos modelos de agrupamento
- Mall_Customers.csv: Arquivo original com informações de clientes, incluindo
CustomerID
,Genre
,Age
,Annual Income (k$)
eSpending Score (1-100)
. - clean.csv: Dados processados após a EDA, com as colunas renomeadas e
CustomerID
removido, pronto para aplicação dos modelos de clustering.
O notebook eda.ipynb
realiza a análise inicial dos dados, incluindo:
- Carregamento e inspeção dos dados
- Análise de valores nulos, duplicados e outliers
- Transformações nas variáveis para padronização, como conversão de gêneros e renomeação de colunas
- Visualizações de distribuições e análise de correlações
O relatório da EDA pode ser encontrado em reports/report_eda.md
.
O notebook models.ipynb
contém a aplicação de diferentes técnicas de agrupamento nos dados:
- K-Means: Utilizado em dados normalizados e não normalizados, com diferentes números de clusters e análise do método
Elbow
. - Hierarchical Clustering: Aplicado para avaliar a estrutura hierárquica dos dados, com visualização de dendrograma.
- DBSCAN: Algoritmo baseado em densidade, útil para identificar clusters de forma arbitrária e detectar pontos ruidosos.
- MeanShift: Algoritmo de agrupamento que detecta automaticamente o número de clusters ideal.
O relatório dos modelos está disponível em reports/report_models.md
.
Para rodar este projeto, as seguintes bibliotecas são necessárias:
pandas
numpy
matplotlib
seaborn
scikit-learn
scipy
Os modelos de clustering identificaram diferentes perfis de clientes. A segmentação resultante pode ser utilizada para personalizar campanhas de marketing e desenvolver estratégias comerciais mais eficazes.
- Documentação do scikit-learn
- Tutoriais de clustering com Python e análise exploratória com
pandas
eseaborn
- Curso Udemy : Machine Learning com Python
Autor: Wellington Moreira | LinkedIn
Licença: MIT