Pandas Dataframe 根据具有相等值的两列删除行

Pandas Dataframe remove rows depending on two columns with equal values

基本上我有一个数据框,其中有很多列,但主要是 ITEM_ID 和 PRICE。

例如:

ID  ITEM_ID  ITEM     PRICE
1      1      potato    20
2      1      potato    20
3      1      potato    25
4      2      tomato    50
5      2      tomato    55
 

我想删除 ITEM_ID 和 PRICE 相等的行,所以输出将是这样的:

ID  ITEM_ID  ITEM     PRICE
1      1      potato    20
2      1      potato    25
3      2      tomato    50
4      2      tomato    55
 

我正在使用

计算平均价格
df['AVG'] = df.groupby('ITEM_ID')['PRICE'].transform('mean')

但我意识到,我正在使用重复值进行计数,所以平均值不正确。

有人可以帮忙吗?

编辑:

尝试后建议

df.drop_duplicates(subset=['item_id', 'price'])

数据还在,keep=False也不行

这个问题的解决方法是:

df.drop_duplicates(subset=['item_id', 'price'], inplace=True)