循环访问分组数据框中的组
问题内容:
考虑这个小例子:
data={"X":[1, 2, 3, 4, 5], "Y":[6, 7, 8, 9, 10], "Z": [11, 12, 13, 14, 15])
frame=pd.DataFrame(data,columns=["X","Y","Z"],index=["A","A","A","B","B"])
我想frame
和
grouped=frame.groupby(frame.index)
然后我想通过以下方式遍历这些组:
for group in grouped:
但是,我坚持下一步:如何将group
每个循环中的in提取为pandas DataFrame,以便对其进行进一步处理?
问题答案:
df.groupby
返回2元组的列表:索引和组。您可以像这样遍历每个组:
for _, g in frame.groupby(frame.index):
.... # do something with `g`
但是,如果要对组执行某些操作,则可能有比迭代更好的方法。