我在python中使用pandas,我有一个pandas Series对象,我不能为我的生活弄清楚.它基本上是这样的:
>>>print(series_object)
key1 key2 key3
First class 19438 Error1:0 117
16431 Error2:0 80
1 Error3:0 70
Second class 28039 Error4:0 65
Third class 2063 Error5:0 28
19439 Error6:0 25
Fourth class 25975 Error7:0 11
Fifth class 23111 Error8:0 7
1243 Error9:665 4
Error9:581 3
27525 Error10:0 3
1243 Error9:748 2
1247 Error11:65 2
1243 Error9:852 2
1247 Error11:66 2
Error11:70 1
Error11:95 1
Error11:181 1
Error11:102 1
Error11:160 1
Run Code Online (Sandbox Code Playgroud)
我想要一种方法来对key2匹配的这个对象的值求和,以便它变为series_object
:
>>>print(series_object)
key1 key2 key3
First class 19438 Error1:0 117
16431 Error2:0 80
1 Error3:0 70
Second class 28039 Error4:0 65
Third class 2063 Error5:0 28
19439 Error6:0 25
Fourth class 25975 Error7:0 11
Fifth class 23111 Error8:0 7
1243 Error9:665 11
27525 Error10:0 3
1247 Error11:65 9
Run Code Online (Sandbox Code Playgroud)
我已经尝试了很多不同的东西,在一个普通的数组中,这对我来说不是问题,但是熊猫系列对象是新的,令我感到困惑.有人可以提供一些帮助吗?
你可以使用groupby.
http://pandas.pydata.org/pandas-docs/stable/groupby.html#groupby-with-multiindex
在你的情况下
series_object.groupby(level='key2').sum()
Run Code Online (Sandbox Code Playgroud)
或者如果你想保留'key1'信息
series_object.groupby(level=['key1', 'key2']).sum()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5712 次 |
最近记录: |