在pandas数据框中的两列中删除包含重复的vlaues的行

时间:2019-08-01 16:53:28

标签: python pandas dataframe

我有一个包含new_price和old_price列的数据框,我想删除这两列中包含重复值的行。

Product old_price   new_price
prod_name   44.05   44.05
prod_name   76.95   76.95
prod_name   2       -1
prod_name   34.95   -1
prod_name   45.95   45.95
prod_name   54.7    54.7
prod_name   29.95   29.95
prod_name   0       24.95
prod_name   1       41.1
prod_name   72.95   72.95
prod_name   32.95   32.95
prod_name   19.95   19.95
prod_name   43      43
prod_name   9       79
prod_name   40.5    40.5
prod_name   32      32

,但是代码返回错误结果,某些行包含重复值。

price_log[price_log['old_price'] != price_log['new_price']]


Product old_price   new_price
prod_name   2       -1
prod_name   34.95   -1
prod_name   0       24.95
prod_name   1       41.1
prod_name   43      43
prod_name   9       79
prod_name   40.5    40.5
prod_name   32      32

所需的输出是

Product old_price   new_price
prod_name   2       -1
prod_name   34.95   -1
prod_name   0       24.95
prod_name   1       41.1
prod_name   9       79

1 个答案:

答案 0 :(得分:1)

尝试将您的条目转换为float:

price_log[price_log['old_price'].astype(float) != price_log['new_price'].astype(float)]