Fase 3 Preparacao dos Dados - PadawanXXVI/projeto_ams GitHub Wiki
🧹 Fase 3 – Preparação dos Dados
Nesta fase do processo CRISP-DM, os dados brutos são transformados em um conjunto limpo, consistente e pronto para modelagem. Isso inclui remoção de ruídos, conversões de tipos, codificações e ajustes necessários para alimentar algoritmos de aprendizado de máquina.
📌 Etapas principais da preparação
🔸 1. Remoção de duplicatas
df = df.drop_duplicates()
Remover registros repetidos evita viés e sobreajuste durante o treinamento dos modelos.
🔸 2. Conversão da variável-alvo para binária
Transformamos a variável Class
, que originalmente possui três categorias (H
, M
, L
), em uma variável binária:
df['Class'] = df['Class'].apply(lambda x: 1 if x == 'L' else 0)
1
→ Alto risco de evasão
0
→ Desempenho médio ou alto (sem risco)
🔸 3. Codificação de variáveis categóricas
As variáveis categóricas foram convertidas em valores numéricos inteiros utilizando o LabelEncoder
, uma técnica apropriada para algoritmos que não aceitam strings como entrada:
from sklearn.preprocessing import LabelEncoder
for coluna in df.select_dtypes(include='object').columns:
df[coluna] = LabelEncoder().fit_transform(df[coluna])
🔸 4. Conversões implícitas
- A maioria das variáveis categóricas são transformadas automaticamente em
int
- As variáveis numéricas já estavam no formato adequado (0 a 100)
🧪 Verificações realizadas após a preparação
- Verificação de tipos com
df.dtypes
- Verificação de proporção da variável-alvo com
df['Class'].value_counts(normalize=True)
- Exibição de estatísticas com
df.describe()
✅ Conclusão da fase
Ao final da preparação:
- Os dados estavam prontos para serem divididos entre treino e teste
- Todas as variáveis estavam no formato numérico, sem nulos, duplicatas ou ruídos
- A codificação preservou a semântica dos dados originais