【发布时间】:2018-06-13 04:07:43
【问题描述】:
这是我尝试过的,也是我想要达到的结果。我正在使用 jupyter 执行此代码:
import pandas as pd
df = pd.DataFrame( {'a':['A','A','B','B','B','C'], 'b':[1,2,5,5,4,6]})
df
输出:
a b
0 A 1
1 A 2
2 B 5
3 B 5
4 B 4
5 C 6
我进一步尝试:
s = df[['a','b']].groupby(df['a']).sum()
b
a
A 3
B 14
C 6
这类似于我在对行进行分组方面想要的,但我不明白为什么标签 b 会向上,它不应该与 a 在同一行吗?
此外,当我遍历s 时,我只会得到b,而当我彻底遍历a['b'] 时,我会得到所有数量。但是,我希望所有字母都说迭代 s['a'] 并得到 A,B,C 但这会引发错误。谢谢
【问题讨论】:
-
s = df[['a','b']].groupby(df['a']).sum().reset_index()? -
df.groupby('a',as_index=False).b.sum()