04. Análise Exploratória de Dados (EDA) Avançada
EDA: A Arte de Fazer Dados Falarem
A análise exploratória de dados é onde hipóteses nascem e intuições se confirmam. É o momento de transformar números brutos em insights acionáveis que guiarão todo o processo de modelagem e avaliação.
Objetivos Estratégicos da EDA
1. Descoberta de Padrões
| Tipo de Padrão | Técnica | Insight Obtido |
|---|---|---|
| Tendências Temporais | Time series plots | Sazonalidade, crescimento |
| Distribuições | Histogramas, Box plots | Normalidade, outliers |
| Correlações | Heatmaps, Scatter plots | Relações entre variáveis |
| Agrupamentos | Clustering exploratório | Segmentos naturais |
2. Detecção de Problemas
| Problema | Sinais | Impacto no Modelo |
|---|---|---|
| Missing Values | Padrões nos NAs | Viés na amostra |
| Outliers | Pontos extremos | Distorção das métricas |
| Desbalanceamento | Distribuição skewed | Acurácia enganosa |
| Data Leakage | Correlação perfeita | Overfitting severo |
Análise Univariada Avançada
Variáveis Numéricas
| Estatística | Fórmula | Interpretação | Ação Recomendada |
|---|---|---|---|
| Skewness | \(\frac{E[(X-\mu)^3]}{\sigma^3}\) | Assimetria da distribuição | Transform se |skew| > 2 |
| Kurtosis | \(\frac{E[(X-\mu)^4]}{\sigma^4} - 3\) | "Peso" das caudas | Detectar outliers |
| Jarque-Bera | \(\frac{n}{6}(S^2 + \frac{(K-3)^2}{4})\) | Teste de normalidade | p < 0.05 = não normal |
| IQR | \(Q_3 - Q_1\) | Dispersão robusta | Outliers se > 1.5×IQR |
Análise de Distribuições
# Identificação de distribuições
Normal: Simétrica, sino
Log-normal: Skew positivo
Exponencial: Decaimento rápido
Uniforme: Plana
Bimodal: Dois picos
Variáveis Categóricas
| Métrica | Fórmula | Interpretação |
|---|---|---|
| Cardinalidade | Número de categorias únicas | Alta = encoding complexo |
| Frequência | Count/Total | Detectar classes raras |
| Entropia | \(-\sum p_i \log p_i\) | Diversidade da distribuição |
| Moda | Categoria mais frequente | Classe dominante |
Análise Bivariada e Multivariada
Correlações e Dependências
| Tipo | Método | Range | Interpretação |
|---|---|---|---|
| Pearson | Linear | [-1, 1] | Relação linear |
| Spearman | Monotônica | [-1, 1] | Relação ordenada |
| Kendall | Concordância | [-1, 1] | Robusta a outliers |
| Cramér's V | Categórica | [0, 1] | Associação categórica |
Matriz de Correlação Interpretada
# Diretrizes de interpretação
🔴 |r| > 0.8 : Correlação muito forte
🟠 |r| > 0.6 : Correlação forte
🟡 |r| > 0.4 : Correlação moderada
🟢 |r| > 0.2 : Correlação fraca
⚪ |r| < 0.2 : Correlação negligível
Análise de Interações
| Técnica | Propósito | Quando Usar |
|---|---|---|
| Feature Crosses | Capturar interações | Features complementares |
| Polynomial Features | Relações não-lineares | Curvatura nos dados |
| Binning + Encoding | Discretização | Relações complexas |
Análise por Tipo de Problema
Classificação
Análise da Variável Target
# Distribuição de classes
Class 0: 35% (105 samples) 🔴
Class 1: 65% (195 samples) 🟢
Ratio: 1.86:1
# Métricas de desbalanceamento
Imbalance Ratio: 1.86
Entropy: 0.934 (máximo = 1.0)
Gini Index: 0.455
Análise por Classe
| Feature | Classe 0 (Média) | Classe 1 (Média) | Separabilidade |
|---|---|---|---|
| Math Score | 58.3 ± 15.2 | 72.1 ± 12.8 | ⭐⭐⭐ |
| Reading Score | 61.2 ± 14.1 | 75.8 ± 11.9 | ⭐⭐⭐ |
| Writing Score | 59.7 ± 14.8 | 74.2 ± 12.2 | ⭐⭐⭐ |
Clustering
Análise de Agrupabilidade
| Teste | Valor | Interpretação |
|---|---|---|
| Hopkins Statistic | 0.23 | Dados agrupáveis (< 0.5) |
| Variance Ratio | 0.67 | Estrutura moderada |
| Gap Statistic | K=3 | Número ótimo de clusters |
Estrutura dos Dados
# Métricas de densidade
Densidade média: 0.67
Distância média: 2.34
Silhouette: 0.47 (moderado)
Calinski-Harabasz: 156.8
Visualizações Avançadas
Gráficos Univariados
| Tipo | Propósito | Quando Usar |
|---|---|---|
| Violin Plot | Distribuição + densidade | Comparar grupos |
| Box Plot | Mediana + outliers | Detectar anomalias |
| Histogram | Frequência | Entender distribuição |
| Q-Q Plot | Normalidade | Verificar suposições |
Gráficos Multivariados
| Tipo | Dimensões | Insight |
|---|---|---|
| Scatter Matrix | n × n | Correlações pairwise |
| Parallel Coordinates | Multi-dimensional | Padrões em alta dimensão |
| Radar Chart | Múltiplas métricas | Perfil multivariado |
| Heatmap | Correlação | Relações estruturadas |
Visualizações Interativas
Red Flags na EDA
Sinais de Alerta
| Problema | Sinal Visual | Métrica | Ação Corretiva |
|---|---|---|---|
| Perfect Separation | Clusters distintos | Silhouette = 1.0 | Verificar data leakage |
| No Variation | Linha plana | Std = 0 | Remover feature |
| Extreme Skew | Cauda longa | |Skew| > 3 | Transformação log |
| Too Many Outliers | Pontos dispersos | >5% fora 3σ | Investigar fonte |
Checklist de Qualidade
Missing values < 5%
Outliers identificados e explicados
Features correlacionadas (|r| > 0.9) removidas
Distribuição target balanceada ou tratada
No data leakage detectado
Features têm variabilidade suficiente
Escalas das features compatíveis
EDA Automatizada e Ferramentas
Bibliotecas Profissionais
| Ferramenta | Foco | Vantagem |
|---|---|---|
| Pandas Profiling | Relatório completo | Automático, rápido |
| Sweetviz | Comparação datasets | Visual, intuitivo |
| Autoviz | Visualizações inteligentes | ML-powered |
| DataPrep | Pipeline completo | Escalável |
Métricas Automatizadas
# Report automático
data_quality_score = 0.87 # Excelente > 0.8
missing_data_ratio = 0.02 # Aceitável < 0.05
correlation_strength = 0.65 # Moderada
outlier_percentage = 0.03 # Normal < 0.05
EDA Específica por Algoritmo
Para KNN
| Aspecto | Análise | Impacto |
|---|---|---|
| Escala | Range das features | Distâncias distorcidas |
| Dimensionalidade | Número de features | Curse of dimensionality |
| Ruído | Outliers locais | Vizinhos inadequados |
| Densidade | Distribuição espacial | Performance heterogênea |
Para K-Means
| Aspecto | Análise | Impacto |
|---|---|---|
| Forma dos Clusters | Elipses vs círculos | Centroides inadequados |
| Tamanhos | Variabilidade | Viés para clusters grandes |
| Separação | Distância entre grupos | Dificuldade de convergência |
| Linearidade | PCA components | Redução de dimensionalidade |
Integração com Projetos
Referências Práticas
Análise Exploratória Aplicada:
-
Análise de importância de features
-
Detecção de interactions
-
Visualização de splits
KNN:
-
Análise de densidade local
-
Mapeamento de vizinhanças
-
Impacto da dimensionalidade
-
Identificação de clusters naturais
-
Análise de separabilidade
-
Otimização do número K
Insights Acionáveis
Para Melhorar Modelos
# Baseado na EDA
Features mais discriminativas identificadas
Estratégia de balanceamento definida
Transformações necessárias mapeadas
Métricas de avaliação apropriadas escolhidas
Número ótimo de clusters estimado
Para Comunicação
# Storytelling com dados
Tendências identificadas
Visualizações impactantes
Estatísticas convincentes
Insights surprendentes
Recomendações baseadas em evidências
"EDA não é apenas sobre conhecer os dados - é sobre deixar os dados revelarem suas verdades ocultas e guiarem suas decisões de modelagem."
Uma EDA meticulosa é o que transforma um projeto de Machine Learning de "tentativa e erro" em uma abordagem científica e direcionada.