グループ化した状態でグループ内のレコードを取得するにはどうすればよいですか?

Pandasの数値データに対する群処理では、`groupby()`関数を使用した後に各グループをイテレーションすることでグループ内のレコードにアクセスできます。`groupby()`関数は`DataFrameGroupBy`オブジェクトを返します。特定のグループのレコードにアクセスするには、このオブジェクトの`get_group()`メソッドを呼び出します。

以下のコード例を参照してください。

import pandas as pd

# 创建一个示例数据集
data = {'Name': ['Tom', 'Nick', 'John', 'Tom', 'Nick'],
        'Age': [20, 25, 22, 20, 25],
        'Gender': ['Male', 'Male', 'Female', 'Male', 'Male']}
df = pd.DataFrame(data)

# 使用groupby函数进行分组
grouped = df.groupby('Name')

# 遍历每个组并获取记录
for name, group in grouped:
    print(f"Group Name: {name}")
    print(group)
    print()

結果は以下のとおりです。

Group Name: John
   Name  Age  Gender
2  John   22  Female

Group Name: Nick
   Name  Age Gender
1  Nick   25   Male
4  Nick   25   Male

Group Name: Tom
  Name  Age Gender
0  Tom   20   Male
3  Tom   20   Male

サンプルコードでは、「Name」列でデータをグループ化したあと、forループで各グループを反復処理し、group変数からそのグループのレコードを取得しています。

bannerAds