大佬教程收集整理的这篇文章主要介绍了我的数据帧有多个索引,如何计算一个级别的总和?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
大家好,我想根据Violent_type
计算year
计数的总和。例如,计算 violent_type
年 2013
的总计数,即 18728+121662+1035
。但是我不知道当有multiIndexes时如何选择数据。任何建议将被认真考虑。谢谢。
pandas.DataFrame.groupby() 中的 level
参数正是您要查找的内容。
level int,级别名称或此类的序列,默认无
如果轴是 MultiIndex(分层),则按特定级别或多个级别分组。
要回答您的问题,您只需:
df.groupby(level=[0,1]).sum()
# or
df.groupby(level=['diStrict','year']).sum()
看效果
import pandas as pd
iterables = [['001','SST'],[2013,2014],['Dangerous','Non-Violent','Violent']]
index = pd.MultiIndex.from_product(iterables,names=['diStrict','year','Violent_type'])
df = pd.DataFrame(list(range(0,len(indeX))),index=index,columns=['count'])
'''
print(df)
count
diStrict year Violent_type
001 2013 Dangerous 0
Non-Violent 1
Violent 2
2014 Dangerous 3
Non-Violent 4
Violent 5
SST 2013 Dangerous 6
Non-Violent 7
Violent 8
2014 Dangerous 9
Non-Violent 10
Violent 11
'''
print(df.groupby(level=[0,1]).sum())
'''
count
diStrict year
001 2013 3
2014 12
SST 2013 21
2014 30
'''
print(df.groupby(level=['diStrict','year']).sum())
'''
count
diStrict year
001 2013 3
2014 12
SST 2013 21
2014 30
'''
以上是大佬教程为你收集整理的我的数据帧有多个索引,如何计算一个级别的总和?全部内容,希望文章能够帮你解决我的数据帧有多个索引,如何计算一个级别的总和?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。