ホームページ >バックエンド開発 >Python チュートリアル >複数の民族列を使用してパンダで人種カテゴリ列を作成する方法

複数の民族列を使用してパンダで人種カテゴリ列を作成する方法

Susan Sarandon
Susan Sarandonオリジナル
2024-12-13 05:51:14698ブラウズ

How to Create a Race Category Column in Pandas Using Multiple Ethnicity Columns?

Pandas の複数の列の値に基づいて新しい列を作成する

問題:

目的は、データフレームの各行のレース カテゴリを決定するカスタム関数を適用することです。いくつかの民族性列の値。人種カテゴリーの優先順位は次のとおりです:

  • ヒスパニック
  • 2 つ以上
  • アメリカインディアン/アラスカ先住民
  • アジア人
  • 黒人/アフリカ系アメリカ人
  • ネイティブハワイアン/太平洋Islander
  • White

カスタム関数:

各行のレース カテゴリを決定するために、カスタム関数を作成します:

def label_race(row):
   if row['eri_hispanic'] == 1:
      return 'Hispanic'
   if row['eri_afr_amer'] + row['eri_asian'] + row['eri_hawaiian'] + row['eri_nat_amer'] + row['eri_white'] > 1:
      return 'Two Or More'
   if row['eri_nat_amer'] == 1:
      return 'A/I AK Native'
   if row['eri_asian'] == 1:
      return 'Asian'
   if row['eri_afr_amer'] == 1:
      return 'Black/AA'
   if row['eri_hawaiian'] == 1:
      return 'Haw/Pac Isl.'
   if row['eri_white'] == 1:
      return 'White'
   return 'Other'

関数をデータフレーム:

Pandas の apply 関数を使用して、カスタム関数をデータフレームの各行に適用します:

df['race_label'] = df.apply(label_race, axis=1)

axis=1 引数は、関数が行単位で適用されます。

結果:

新しい列race_labelには、データフレーム内の各行の計算されたレースカテゴリが含まれます。

以上が複数の民族列を使用してパンダで人種カテゴリ列を作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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