Skip to main content
 首页 » 编程设计

python之仅在数据框中提取最小值

2025年05月04日18wuhuacong

我有以下数据框:

Quantity_Limit   Cost   Wholesaler_Code 
  2           9.2         1 
  2           9.4         1 
  2           7.1         2 
 
  4           10.2        1 
  4           4.1         2 
  4           2.1         3 

我想创建以下数据框,仅批发商提供最低成本,数量限制相同,不使用 for 循环:

Quantity_Limit   Cost   Wholesaler_Code 
  2           7.1         2 
 
  4           2.1         3 

我试过:

df.groupby(["Quantity_Limit", "Wholesaler_Code"], as_index = False).agg({"Cost": "min"}) 

但我没有得到想要的结果。

请您参考如下方法:

只需对 Quantity_Limit、Cost 和 drop_duplicates 进行排序

df.sort_values(['Quantity_Limit', 'Cost']).drop_duplicates(subset=['Quantity_Limit']) 
 
Out[1121]: 
   Quantity_Limit  Cost  Wholesaler_Code 
2  2               7.1   2 
5  4               2.1   3