カテゴリ変数のエンコーディング
scikit-learn でモデリングする前に、UFO データセットにはエンコードが必要な列がいくつかあります。ここでは、バイナリエンコーディングとワンホットエンコーディングの両方を使って変換していきます。
この演習はコースの一部です
Pythonで学ぶMachine Learningの前処理
演習の手順
apply()を使い、値が"us"のときに1、それ以外は 0 を返す条件付きのlambda関数を書いてください。type列の.unique()値の個数を出力してください。pd.get_dummies()を使って、type列のワンホットエンコード済みのセットを作成してください。- 最後に、
pd.concat()を使って、エンコードしたtype_set変数をufoデータセットに連結してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Use pandas to encode us values as 1 and others as 0
ufo["country_enc"] = ufo["country"].____
# Print the number of unique type values
print(len(____.unique()))
# Create a one-hot encoded set of the type values
type_set = ____
# Concatenate this set back to the ufo DataFrame
ufo = pd.concat([____, ____], axis=1)