【发布时间】:2020-11-02 19:20:27
【问题描述】:
在我的 DataFrame 的列中,我有 ClientID CartID FoodID 数量,我想找出客户购买最多的食物是什么。
我试过这个:
df.groupby(["ClientID", "FoodID"])['Quantity'].sum().max(level=['ClientID', 'FoodID']).reset_index()
但是得到了一个完全错误的输出:
Client FoodID Quantity
1 10 16008 24
2 10 17021 36
3 10 20665 6
4 10 20719 40
... ... ... ...
267610 200 84920 4
267611 200 85039 96
267612 200 85039 120
267613 200 85040 48
267614 200 85173 48
编辑:我也试过
mbi.groupby("ClientID")["Quantity"].max()
但这会导致一对(ClientID,最购买食物的数量),我需要(Client,FoodID)
【问题讨论】: