ノンプログラマーのためのPython学習サイト

Pandas|データフレームのカテゴリ変数をダミー変数に変換する方法

eye_catch_Pandas

文字列で表現されているカテゴリ変数をダミー変数に変換する方法を紹介します。
カテゴリ変数を0と1だけの数列に変換する処理で、量的データを扱う機械学習に利用されているテクニックです。「ワンホットエンコーディング」とも呼ばれます。

データフレームの確認

果物の販売データ(fruits_df)を元にデータを操作していきます。商品名と産地をダミー変数に変換する方法を説明します。

Pansas_get_dummies

import pandas as pd
fruits_df = pd.read_excel('/content/sample_02.xlsx')
fruits_df.head(10)

1.pandasのインポート
2.データフレーム (fruits_df)へExcelファイルの読み込み
3.データフレーム (fruits_df)を表示

カテゴリ変数をダミー変数に変換する方法(1種類)

get_dummiesメソッドの引数に列名(商品名)を指定。商品名をダミー変数(0、1)に変換。

Pansas_get_dummies

fruits_df1 = pd.get_dummies(fruits_df, columns = ['商品名'])
fruits_df1.head()

1.変数(fruits_df)に、ダミー変数に変換したデータを代入
2.データフレーム (fruits_df)を表示

カテゴリ変数をダミー変数に変換し、列名を変更する方法

get_dummiesメソッドの引数に列名(商品名)を指定し「prefix」で任意の文字列を指定。列名を変更できる。

Pansas_get_dummies

fruits_df2 = pd.get_dummies(fruits_df,columns = ['商品名'], prefix = '果物')
fruits_df2.head()

1.変数(fruits_df)に、ダミー変数に変換したデータ(列名:商品名)を代入
2.データフレーム (fruits_df)を表示

カテゴリ変数をダミー変数に変換する方法(2種類)

get_dummiesメソッドの引数に列名(商品名、産地)を指定。商品名をダミー変数(0、1)に変換。

Pansas_get_dummies

fruits_df3 = pd.get_dummies(fruits_df,columns = ['商品名','産地'])
fruits_df3.head()

1.変数(fruits_df)に、ダミー変数に変換したデータ(列名:商品名、産地)を代入
2.データフレーム (fruits_df)を表示