One-Hot Encoding

One-Hot Encodingとは?

One-Hot Encodingは、カテゴリ変数を数値データに変換する手法の一つです。この手法は、機械学習アルゴリズムがカテゴリデータを処理しやすくするためによく使われます。

各カテゴリに対して、全てのカテゴリの数だけのバイナリベクトルを作成するエンコーディングになります。例えば下記のようなデータがあるとします。

import pandas as pd

df = pd.DataFrame({'色': ['赤', '青', '緑', '青', '赤']})

df

pandasにはOne-Hot Encodingを行うための関数があります。get_dummies関数は、カテゴリ変数を数値のバイナリベクトルに変換するために使用されます。具体的には、各カテゴリ値に対応する列を作成し、そのカテゴリが存在する場合に1、存在しない場合に0を設定します。

one_hot_df = pd.get_dummies(df, columns=['色'])

one_hot_df