始める無料で始める

カテゴリ変数のエンコーディング

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)
コードを編集して実行