Projeto prático focado em limpeza e tratamento de dados utilizando Python e Pandas. O objetivo é aplicar técnicas fundamentais de preparação de dados para deixar um dataset de clientes pronto para análises e modelagem.
Este é um projeto educacional que demonstra as principais etapas do pré-processamento de dados, incluindo tratamento de valores ausentes, remoção de duplicatas, normalização de formatos, tratamento de outliers, normalização de variáveis e encoding de variáveis categóricas.
- Praticar técnicas de limpeza e tratamento de dados
- Identificar e corrigir problemas de qualidade de dados
- Aplicar métodos de tratamento de outliers
- Realizar normalização e padronização de variáveis
- Implementar encoding de variáveis categóricas
- Preparar dados para análises futuras
O dataset dados_clientes.csv contém informações de clientes e suas compras:
- id_cliente: Identificador único do cliente
- nome: Nome do cliente
- idade: Idade do cliente
- genero: Gênero do cliente
- renda_anual: Renda anual do cliente
- categoria_produto: Categoria do produto comprado
- valor_compra: Valor da compra realizada
- data_compra: Data da transação
- regiao: Região do cliente
- Verificação de estrutura do dataset (
info()) - Análise estatística descritiva (
describe()) - Identificação de dados ausentes
- Detecção de duplicatas
- Identificação de missing values em todas as colunas
- Estratégias de imputação baseadas em contexto
- Remoção de registros quando necessário
- Padronização de datas para formato datetime
- Correção de inconsistências em campos de texto
- Uniformização de categorias
Método: Winsorização com IQR
- Cálculo de quartis (Q1, Q3) e IQR
- Definição de limites:
Q1 - 1.5*IQReQ3 + 1.5*IQR - Substituição de outliers pelos limites (não remoção)
- Vantagem: mantém o tamanho da amostra
Justificativa: Os outliers identificados (10% da base) aparentavam ser dados reais que, apesar de extremos, não deveriam ser removidos. A winsorização reduz o impacto sem perder informação.
Min-Max Normalization
- Aplicada em:
idade,renda_anual,valor_compra - Fórmula:
(x - min) / (max - min) - Resultado: valores entre 0 e 1
- Útil para algoritmos sensíveis à escala
One-Hot Encoding
- Aplicado em:
generoecategoria_produto - Criação de variáveis dummy
- Prepara dados para modelos de machine learning
O projeto inclui visualizações para:
- Histogramas de distribuição de variáveis numéricas
- Boxplots para identificação de outliers
- Análise visual antes e depois do tratamento
- Python 3.12
- Pandas: Manipulação de dados
- Matplotlib: Visualização de dados
- Seaborn: Gráficos estatísticos
- Google Colab: Ambiente de desenvolvimento
- Clone o repositório
git clone https://github.com/seu-usuario/dataclean-co.git
cd dataclean-co- Instale as dependências
pip install pandas matplotlib seaborn-
Execute no Google Colab (recomendado)
- Faça upload do notebook para o Colab
- Monte seu Google Drive
- Ajuste o caminho:
/content/drive/MyDrive/datasets/dados_clientes.csv - Execute as células sequencialmente
-
Ou execute localmente
# Ajuste o caminho do dataset
df = pd.read_csv('caminho/para/dados_clientes.csv')1. Coleta de Dados
↓
2. Análise Inicial (info, describe, missing values)
↓
3. Tratamento de Valores Ausentes
↓
4. Normalização de Formatos (datas, textos)
↓
5. Tratamento de Outliers (Winsorização)
↓
6. Normalização de Variáveis (Min-Max)
↓
7. Encoding de Categóricas (One-Hot)
↓
8. Dataset Limpo e Pronto para Análise
✅ Winsorização para outliers (mantém tamanho da amostra) ✅ One-Hot Encoding para variáveis categóricas ✅ Normalização Min-Max para padronizar escalas ✅ Análise visual para validar tratamentos
🎯 Não remover outliers que parecem dados reais 🎯 Normalizar apenas variáveis numéricas contínuas 🎯 Usar encoding apropriado para cada tipo de variável 🎯 Validar cada etapa antes de prosseguir
📚 Data Quality Assessment 📚 Missing Data Handling 📚 Outlier Detection & Treatment 📚 Feature Scaling 📚 Categorical Encoding 📚 Data Preprocessing Pipeline
Este projeto está sob a licença MIT.
⭐ Projeto desenvolvido para prática de técnicas de limpeza e tratamento de dados