我有一个庞大的数据集,其中包含许多不同的客户名称,账单等。
现在,我想显示4个客户的累计最高账单。
到目前为止,我已经使用了groupby函数:
data.groupby(by = ["CustomerName","Bill"], as_index=False).sum()
我试图按客户名称和账单进行分组,但是这并没有给我所有客户订单的总和,而是仅给客户每个订单。
有人可以帮我告诉我如何在第一位客户x(累积账单总额最高)及其所有订单的总和中收到我的订单,在第二位置上,我如何接收累积账单第二高的客户等等? / p>
非常感谢!
答案 0 :(得分:0)
由于我不知道您的data
数据框的完整结构,因此建议您先将相关列设置为子视图:
data = data[["CustomerName", "Bill"]]
然后,您只需要按CustomerName
分组并汇总所有列(在这种情况下为Bill
)
data.groupby(by=["CustomerName"]).sum()
最后,您需要按Bill
列以非升序排列:
data.sort_values(by='Bill', ascending=False)
print(data.head(4))