pandas对一个DataFrame经过groupby分组之后得到的返回值不是DataFrame类型,因此无法直接查看。输出如下:

<pandas.core.groupby.generic.DataFrameGroupBy object at 0x00000190B96CBDF0>

除了直接运用各种聚合操作读取各分组的统计信息外,我们有三种方法可以查看分组后的具体结果:

1. 通过循环遍历打印:

假设原数据 df 如下所示:
在这里插入图片描述
则按Gender分组后遍历打印遍历如下:

for i in df.groupby('Gender'):
	print(i)

可以得到如下内容:
在这里插入图片描述
可以看出返回的内容是由若干个二元组构成的,元组第一位是分组名,第二位是组内成员构成的DataFrame。而元组之间并不是由python通常的元组、列表或字典连接的,这也是groupby的返回类型难以直接查看的原因。

2. 用df.groups查看分组情况

df.groupby('Gender').groups

得到的结果如下:
在这里插入图片描述
表示F分组中是原表中第2,4行数据,M分组中是原表中第1,3,5,6行数据。

3. 用df.get_group()查看每组内容

df.groupby('Gender').get_group('F')

得到的结果如下:
在这里插入图片描述
(注意:.get_group()一次只能查看一组数据。)

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐