如何更改整个数组的浮点精度而不必执行
np.set_printoptions
?这与印刷无关;它与印刷有关。我希望压缩这些值以与其他数组进行相等性检查。
e = np.array([0.8292222222222225, 0.1310000000000003])
到
e = np.array([0.829225, 0.131003])
我希望能够将
0.8292222222222225
与其他数组中的 0.829225
进行比较。
无法获得平等
True
>>> e = np.array([0.8292222222222225, 0.1310000000000003])
>>> e[0]
0.8292222222222225
>>> e[0]==0.829225
False
>>>
numpy.isclose
功能。它允许您比较公差内的元素:
>>> a = np.array([0.8292222222222225, 0.1310000000000003])
>>> b = np.array([0.8293, 0.132])
>>> np.isclose(a, b, atol=1e-3)
array([ True, True])
>>> np.isclose(a, b, atol=1e-4)
array([ True, False])
>>> np.isclose(a, b, atol=1e-5)
array([False, False])
请注意,您可以使用相对容差和绝对容差。