python - 根据最小订单选择独特的产品

标签 python pandas dataframe

目标是在订单最少时选择独特的产品。


import pandas as pd
df = pd.DataFrame({'Order': [1,2,3],
                   'Product':['Apple','Apple','Orange'],
                   'Metric': ['20 x 2 g','20 x 2 g','23 x 2 g']})
df

  Order Product Metric
0   1   Apple   20 x 2 g
1   2   Apple   20 x 2 g
2   3   Orange  23 x 2 g

预期输出:
要在订单号 1 处选择 Apple、公制 20 x 2g,因为其订单是最小的。

    Order   Product Metric
0   1   Apple   20 x 2 g
1   3   Orange  23 x 2 g

请告诉我您的看法。谢谢!

最佳答案

使用DataFrame.sort_valuesgroupby.first :

df.sort_values('Order').groupby('Metric',as_index=False).first()

DataFrame.drop_duplicates

df.sort_values('Order').drop_duplicates('Metric',keep = 'first')

输出:

    Order   Product Metric
0   1   Apple   20 x 2 g
1   3   Orange  23 x 2 g

关于python - 根据最小订单选择独特的产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59492515/

相关文章:

python - ERROR 404 Django 项目当前路径错误

python - Pandas asof_locs 示例

python - "No driver name specified"将 pandas 数据框写入 SQL Server 表

python - Pandas:以一列的子字符串搜索和另一列的逆搜索为条件创建一个新列

python - pandas groupby() apply() 的 KeyError

python - 如何使用循环为数据帧提供顺序名称?

python - 将 pandas 数据框与关键重复项合并

python - 什么是适用于 App Engine 上 python 的良好 SOAP 客户端库?

python - Pandas Dataframe 合并而不复制任何一方?

python - 是否可以将比较运算符作为参数传递给函数?