将两列中的值与熊猫进行比较



我的数据帧中有 37k 行。我需要比较两列中的值以确定价格是相同还是不同。我还需要打印出不同的。

所以基本上我的表由三列组成。名称、价格 1 和价格 2。我需要知道哪些是不相同的。

似乎在文档中找不到任何内容。感谢您的帮助!

您可以创建布尔值的第三列,用于标识Price1Price2不同的情况:

df["is_diff"] = df["Price1"] != df["Price2"]

然后,如果要查看两个价格不同的情况,可以显示仅显示以下情况的数据帧:

df[df["is_diff"] == True]

numpy.isclose

由于价格可能是浮动值,因此它们可能不完全相同,但足够接近,以至于您想将它们视为相同。 您可以使用np.isclose来确定它们是否在公差范围内。

import numpy as np
mask = np.isclose(df['Price1'], df['Price2'])
df[~mask]

则默认绝对容差为 1e-08 相对容差为 1e-05 。 请参阅文档

但是,如果您希望绝对容差在1e-06范围内,则可以更改它

mask = np.isclose(df['Price1'], df['Price2'], atol=1e-06)
df[~mask]

相关内容

  • 没有找到相关文章

最新更新