我是 DataFrames 的新手,我想对多列进行分组,然后对最后一列进行求和并计数。例如
s = pd.DataFrame(np.matrix([[1, 2,3,4], [3, 4,7,6],[3,4,5,6],[1,2,3,7]]), columns=['a', 'b', 'c', 'd'])
a b c d
0 1 2 3 4
1 3 4 7 6
2 3 4 5 6
3 1 2 3 7
我想加群a
, b
and c
但然后总结d
并对组内的元素进行计数。
我可以数
s = s.groupby(by=["a", "b", "c"])["d"].count()
a b c
1 2 3 2
3 4 5 1
7 1
我可以总结一下
s = s.groupby(by=["a", "b", "c"])["d"].sum()
a b c
1 2 3 11
3 4 5 6
7 6
但是我想将其组合起来,使得生成的数据框同时具有总和和计数列。
a b c sum count
1 2 3 11 2
3 4 5 6 1
7 6 1