Kódování kategorických sloupců III: DictVectorizer
Než se pustíme do pipeline, ještě jeden užitečný trik. Dvoustupňový postup, kterým jsi právě prošel/prošla – LabelEncoder následovaný OneHotEncoder – lze zjednodušit pomocí DictVectorizer.
Použití DictVectorizer na DataFrame převedený do slovníku ti umožní provést label encoding i one-hot encoding najednou.
V tomto cvičení si celý postup vyzkoušíš!
Toto cvičení je součástí kurzu
Extreme Gradient Boosting with XGBoost
Pokyny k cvičení
- Importuj
DictVectorizerzsklearn.feature_extraction. - Převeď
dfna slovník s názvemdf_dictpomocí metody.to_dict()s argumentem"records". - Vytvoř instanci objektu
DictVectorizers názvemdvs argumentemsparse=False. - Aplikuj
DictVectorizernadf_dictpomocí metody.fit_transform(). - Klikni na Submit Answer a zobraz prvních pět řádků výsledku a slovník příznaků.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Import DictVectorizer
____
# Convert df into a dictionary: df_dict
df_dict = ____
# Create the DictVectorizer object: dv
dv = ____
# Apply dv on df: df_encoded
df_encoded = ____
# Print the resulting first five rows
print(df_encoded[:5,:])
# Print the vocabulary
print(dv.vocabulary_)