gpt4 book ai didi

python - Pandas 数据框 : Can I fetch other column values along with the column on which group by clause has been applied?

转载 作者:行者123 更新时间:2023-12-04 09:40:56 25 4
gpt4 key购买 nike

我有这个数据集,其中包含每周在各个商店销售的商品的价格。

数据框:price_df 看起来像这样:

price_df.head()
store_id item_id week sell_price
0 S1 item1 w1 9.58
1 S1 item1 w2 9.00
2 S2 item1 w1 8.30
3 S2 item1 w2 8.50
4 S2 item2 w1 8.26

我想知道:对于每个“商品和商店”组合的最高价格

我的代码:
item_store_max_prices = price_df.groupby(["store_id","item_id"]).agg({"sell_price":["max"]})

但这只会显示 store_id、item_id 以及该组合列出的最高价格。

问题陈述:

但是,我还想显示在我的结果集中观察到该“商店 - 商品”组合的最高价格的那一周。

例如:
    store_id     item_id  week    sell_price
0 S1 item1 w1 9.58
1 S2 item1 w2 8.50

你能帮助我如何获得这个结果吗?

提前致谢。

最佳答案

您可以找到具有 max 的行的索引值使用 df.idxmax() .

然后使用 df.loc 使用上述索引对数据帧进行子集化, 像这样:

idx = price_df.groupby(["store_id","item_id"])['sell_price'].idxmax().tolist()
price_df = price_df.loc[idx]

输出:
  store_id item_id week  sell_price
0 S1 item1 w1 9.58
3 S2 item1 w2 8.50
4 S2 item2 w1 8.26

关于python - Pandas 数据框 : Can I fetch other column values along with the column on which group by clause has been applied?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62334158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com