Hei*_*erg 2 python numpy pandas
我有一个数据框如下
df=pd.DataFrame({"A":np.random.randint(1,10,9),"B":np.random.randint(1,10,9),"C":list('abbcacded')})
A B C
0 9 6 a
1 2 2 b
2 1 9 b
3 8 2 c
4 7 6 a
5 3 5 c
6 1 3 d
7 9 9 e
8 3 4 d
Run Code Online (Sandbox Code Playgroud)
我想在下面获得分组结果(使用key ="C"列),并且有意地删除行cd和e.
number A_sum B_sum
a 2 16 15
b 2 3 11
Run Code Online (Sandbox Code Playgroud)
这是2row*3列数据帧.分组键是C列."数字"栏表示每个字母(a和b)的计数.A_sum和B_sum表示对C列中的字母总和进行分组.
我想我们应该使用方法groupby但是如何获得这个数据汇总表呢?
你可以使用一个单独groupby
的
res = df.groupby(df.C).agg({'A': 'sum', 'B': {'sum': 'sum', 'count': 'count'}})
res.columns = ['A_sum', 'B_sum', 'count']
Run Code Online (Sandbox Code Playgroud)