Olá!
Na aula em que iniciamos o treinamento do algoritmo, há as seguintes linhas de código:
from sklearn.preprocessing import OneHotEncoder
colunas_categoricas = ['Migração', 'Sexo','Estrangeiro', 'Necessidades educacionais especiais', 'Devedor',
'Taxas de matrícula em dia', 'Bolsista', 'Período','Estado civil', 'Curso', 'Qualificação prévia']
df_categorico = df[colunas_categoricas]
encoder = OneHotEncoder(drop='if_binary')
df_encoded = pd.DataFrame(encoder.fit_transform(df_categorico).toarray(),
columns=encoder.get_feature_names_out(colunas_categoricas))
df_final = pd.concat([df.drop(colunas_categoricas, axis=1), df_encoded], axis=1)
No entanto, gostaria de saber o motivo de usar o "toarray()". Imagino que seja para transformar a matriz de esparsa para densa. Todavia, por quê não usar o parâmetro do OneHotEncoder como sparse = False? O resultado não seria o mesmo?
Desde já, obrigado