始める無料で始める

カテゴリ変数の変換

sklearn のモデルは数値特徴量を入力として必要とするため、カテゴリ変数を数値にエンコードすることが重要です。最も一般的な手法は「ワンホットエンコーディング」ですが、実装は簡単な一方でメモリ消費が大きくなります。そこで本演習では、各カテゴリ列に対してハッシング手法を用い、カテゴリ値を数値に写像します。

pandas モジュールは作業環境で pd として利用可能で、サンプルの DataFrame は df として読み込まれています。

この演習はコースの一部です

PythonでMachine Learningを使ってCTRを予測する

コースを見る

演習の手順

  • データ型でフィルタリングして、カテゴリ列を選択します。
  • 各カテゴリ列にハッシュ関数を適用します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Get categorical columns
categorical_cols = df.____(
  include = [____]).columns.tolist()
print("Categorical columns: ")
print(categorical_cols)

# Iterate over categorical columns and apply hash function
for col in ____:
	df[col] = df[col].____(lambda x: ____(x))

# Print examples of new output
print(df.head(5))
コードを編集して実行