Home › Fóruns › Fórum Machine Learning e Data Science com Python de A à Z › Adicionar Novo Registro com Variável Categórica › Responder a: Adicionar Novo Registro com Variável Categórica
Olá Nikolas, segue a resposta do instrutor Denny:
O novo registro deve primeiro passar por todo o processamento da mesma forma que o dataset usado no treinamento passou, ou seja, todas as etapas de LabelEncoder e o OneHotEncoder no final, mas desta vez usando o método transform já que fit é usado somente com os dados de treinamento. Entretanto, você precisa observar que, sempre que usa o método fit_transform na mesma instância do LabelEncoder (no caso, labelencoder_previsores), como foi mostrado na aula, ele perde a informação referente à variável que já havia processado. Para evitar isso, é preciso criar uma instância separada para cada variável, como por exemplo:
labelencoder_previsores_1 = LabelEncoder() labelencoder_previsores_3 = LabelEncoder() labelencoder_previsores_5 = LabelEncoder() [...] labelencoder_previsores_13 = LabelEncoder()
Aí você aplica cada instância separadamente a cada variável:
previsores[:,1] = labelencoder_previsores_1.fit_transform(previsores[:,1]) previsores[:,3] = labelencoder_previsores_3.fit_transform(previsores[:,3]) previsores[:,5] = labelencoder_previsores_5.fit_transform(previsores[:,5]) [...] previsores[:,13] = labelencoder_previsores_13.fit_transform(previsores[:,13])
E depois, no novo registro, somente o método transform:
novo_registro[:,1] = labelencoder_previsores_1.transform(novo_registro[:,1]) novo_registro[:,3] = labelencoder_previsores_3.transform(novo_registro[:,3]) novo_registro[:,5] = labelencoder_previsores_5.transform(novo_registro[:,5]) [...] novo_registro[:,13] = labelencoder_previsores_13.transform(novo_registro[:,13])
O ColumnTransformer não precisa mudar, já que ele processa mais de uma coluna por vez:
novo_registro = column_transformer.transform(novo_registro).toarray()
Aí é só chamar seu modelo com o método predict para classificar o novo registro.
- Esta resposta foi modificada 3 anos, 10 meses atrás por
Fábio Spak.