パンダ: groupby() を使用した後にグループを取得する方法


pandas DataFrame でgroupby()関数を使用した後、次のメソッドを使用して特定のグループを取得できます。

方法 1: groupby() を使用した後にグループを取得する

 grouped_df. get_group (' A ')

方法 2: groupby() を使用した後にグループから特定の列を取得する

 grouped_df[[' column1 ', ' column3 ']]. get_group (' A ')

次の例は、次の pandas DataFrame で各メソッドを実際に使用する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' store ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' sales ': [12, 15, 24, 24, 14, 19, 12, 38],
                   ' refunds ': [4, 8, 7, 7, 10, 5, 4, 11]})

#view DataFrame
print (df)

  store sales refunds
0 to 12 4
1 to 15 8
2 to 24 7
3 to 24 7
4 B 14 10
5 B 19 5
6 B 12 4
7 B 38 11

例 1: groupby() を使用した後にグループを取得する

次のコードは、 groupby( ) 関数を使用して店舗名ごとに行をグループ化し、次にget_group()関数を使用してグループ名「A」のグループに属するすべての行を取得する方法を示しています。

 #group rows of DataFrame based on value in 'store' column
grouped_stores = df. groupby ([' store '])

#get all rows that belong to group name 'A'
grouped_stores. get_group (' A ')

    store sales refunds
0 to 12 4
1 to 15 8
2 to 24 7
3 to 24 7

get_group()は、グループ名「A」のグループに属するすべての行を返すことに注意してください。

例 2: groupby() を使用した後にグループから特定の列を取得する

次のコードは、 groupby( ) 関数を使用して店舗名ごとに行をグループ化し、次にget_group()関数を使用して、グループ名「A」のグループに属するすべての行を「sales」列と「Refunds」列のみ取得する方法を示しています。 :

 #group rows of DataFrame based on value in 'store' column
grouped_stores = df. groupby ([' store '])

#get all rows that belong to group name 'A' for sales and refunds columns
grouped_stores[[' store ', ' refunds ']]. get_group (' A ')

    store refunds
0 to 4
1 to 8
2 to 7
3 to 7

get_group()は、「sales」列と「refunds」列についてのみ、グループ名「A」のグループに属するすべての行を返すことに注意してください。

追加リソース

次のチュートリアルでは、パンダで他の一般的な操作を実行する方法を説明します。

Pandas で GroupBy 合計を実行する方法
Pandas で Groupby と Plot を使用する方法
Pandas で GroupBy を使用して一意の値をカウントする方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です