Pandas Dataframe:在前两列进行Groupby并计算第一列的出现次数

问题描述

由于groupby我有一个数据集:

CUSTID TRANSACTION_ID COUNT

CU_1    TR_1                1  
CU_1    TR_2                1
CU_1    TR_3                1
CU_2    TR_4                1  
CU_2    TR_5                1

我需要得到如下结果 CUSTID TOTAL_COUNT

CU_1       3          
CU_2       2

解决方法

只运行:

df.groupby('CUSTID').COUNT.sum()

您只需要按单个列( CUSTID )分组,然后, 从每个组中提取 COUNT 列并计算其 sum()

其他步骤可能是为结果提供所需的名称 系列。如果重要,请附加.rename('TOTAL_COUNT') 上面的代码。

另一步可能是将此 Series 转换为 DataFrame 。 为此,请将.to_frame()附加到上面的代码中。