【发布时间】:2019-08-02 01:00:40
【问题描述】:
我有一个包含 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
【问题讨论】:
-
它对我有用。您可能应该检查
40.5 40.5是否属于同一类型,例如str与float。 -
不要相信
==总是为“相等”的浮点值返回True。