ホームページ  >  記事  >  バックエンド開発  >  「get_dummies」と「numpy」を使用せずにパンダのカテゴリ列を数値インデックスに変換する方法は?

「get_dummies」と「numpy」を使用せずにパンダのカテゴリ列を数値インデックスに変換する方法は?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-27 22:51:02422ブラウズ

How to Convert Pandas Categorical Columns to Numerical Indices Without `get_dummies` and `numpy`?

Pandas カテゴリを数値に変換します

国コードなどのカテゴリ列を含む DataFrame を検討します。

cc | temp
US | 37.0
CA | 12.0
US | 35.0
AU | 20.0

これらのカテゴリを次のように変換するにはget_dummies と numpy の使用を避けてインデックスを作成するには、次の手順を検討してください:

  1. 列を分類: カテゴリ列をカテゴリ型に変換します:
df.cc = pd.Categorical(df.cc)
  1. カテゴリ コードの取得: .codes 属性を使用して、各カテゴリの整数コードを取得します。
df['code'] = df.cc.codes

結果のデータフレームには、数値インデックスを持つ code という名前の新しい列:

   cc  temp  code
0  US  37.0     2
1  CA  12.0     1
2  US  35.0     2
3  AU  20.0     0

または、DataFrame を変更せずにカテゴリ コードを取得できます:

df.cc.astype('category').codes
  1. インデックスとして使用: 必要に応じて、カテゴリ列を別の DataFrame のインデックスとして使用できます:
df2 = pd.DataFrame(df.temp)
df2.index = pd.CategoricalIndex(df.cc)

以上が「get_dummies」と「numpy」を使用せずにパンダのカテゴリ列を数値インデックスに変換する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。