首页 > 解决方案 > 如何在 Python 中具有浮点数列表的 2 个单元格之间寻找具有容差的相等性?

问题描述

有人可以帮我吗?

我有一个包含三列a、b、c的数组,比如100 行

每个单元格包含一个浮点数列表,如下所示:

[[102.264], [102.376], [102.488], [102.6], [10...  
[[104.718], [104.725], [104.732], [105.771]]

我想做的是对于每一行,将 a 与 b 进行比较并在 c 中设置具有相等性的浮点数(b 中的值 = a 中的值)和具有近似匹配的浮点数(b 中的值的公差为说 0,1 与 a) 中的值。

我在网上花费了无数个小时,试图找出一些可行但没有成功的东西。

我发现以下方法也许有高级技能的人可以提供帮助:

当我尝试上述方法之一时,我收到错误消息。我真的很菜鸟,因此不知道我必须做什么。我必须最初更改列 a、b、c 的类型吗?我必须将每个列表扩展为 pandas 数组吗?我真的不知道...请帮助

我的预期结果是每行的列 c 具有以下浮点数:

有人可以帮忙吗?我真的在乞求,我愿意 PayPal..

感谢您花时间阅读这篇文章,并提前为您提供帮助!

结果数组示例: 在此处输入图像描述

标签: pythonpandasnumpyrangeequality

解决方案


为什么你不能通过下面的代码运行 a 和 b 并检查它是否返回 true 或 false?

def check_if_close(a, b):
    if (abs(b-a) < 0.1):
        return True
    else:
        return False

print(check_if_close(9.1, 9.15)) #true
print(check_if_close(8.1, 9.15)) #false
print(check_if_close(7.06, 8.0)) #false
print(check_if_close(7.06, 7.1)) #true

看看是否满足您的需求。


推荐阅读