ホームページ >バックエンド開発 >Python チュートリアル >Pandas カテゴリを数値インデックスに変換するにはどうすればよいですか?
問題:
カテゴリ値を含むデータフレームが与えられた場合、タスクは変換することですこれらのカテゴリーを数値インデックスに変換します。次のようなカテゴリとして国があるとします。
cc | temp US | 37.0 CA | 12.0 US | 35.0 AU | 20.0
get_dummies を使用したワンホット エンコーディングの代わりに、目標は、各国に cc_index = [1,2,1,3] のようなインデックスを割り当てることです。 .
解決策:
Pandas カテゴリを数値インデックスに変換するには、次の手順に従います:
データ型を変更します。カテゴリ列:
df.cc = pd.Categorical(df.cc)
カテゴリ コードを保存する新しい列を作成します:
df['code'] = df.cc.codes
これにより、データフレームが生成されます数値インデックスを含む追加のコード列:
cc temp code 0 US 37.0 2 1 CA 12.0 1 2 US 35.0 2 3 AU 20.0 0
または、astype メソッドを利用して、カテゴリカル列をコード付きのカテゴリカル列に直接変換できます:
df.cc.astype('category').codes
Anotherオプションは、カテゴリ列を新しいデータフレームのインデックスとして使用することです:
df2 = pd.DataFrame(df.temp) df2.index = pd.CategoricalIndex(df.cc)
以上がPandas カテゴリを数値インデックスに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。