グループ化した状態でグループ内のレコードを取得するにはどうすればよいですか?
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変数からそのグループのレコードを取得しています。