分组统计后如何基于另一列进一步拆分?以年度自杀数据按性别拆解为例
按年份和性别拆分统计自杀人数
你可以通过在groupby中传入多个分组列来实现按年份和性别同时统计自杀人数,具体代码如下:
- 基础分组统计(返回多层索引的Series):
df.groupby(['year', 'sex'])['suicides_no'].sum()
这个操作会先按year分组,再在每个年份组内按sex(male/female)细分,最后对每组的suicides_no求和,结果会以year和sex作为双层索引,展示对应分组的自杀总人数。
- 转成宽表格式(更直观的行列展示):
如果希望结果以年份为行、性别为列的表格形式呈现,可以在统计后使用unstack()方法:
df.groupby(['year', 'sex'])['suicides_no'].sum().unstack()
这样输出的结果中,每一行对应一个年份,male和female作为单独的列,直接展示对应年份下不同性别的自杀人数总和。
内容的提问来源于stack exchange,提问作者Divyajeet Singh
相关产品推荐
相关产品推荐

