numpy判断两个向量是否相近-numpy.allclose

比较两个向量是否相同直接==就行,但是相近的话就不一样了,当然可以自己实现,这里numpy提供了方法,

官方API:https://docs.scipy.org/doc/numpy/reference/generated/numpy.allclose.html

numpy.allclose(a, b, rtol=1e-05, atol=1e-08, equal_nan=False)

a,b两个向量

rtol : float

The relative tolerance parameter

atol : float

The absolute tolerance parameter

equal_nan : bool

是否匹配空nan值

return 是否相近

Example:

>>> np.allclose([1e10,1e-7], [1.00001e10,1e-8])
False
>>> np.allclose([1e10,1e-8], [1.00001e10,1e-9])
True
>>> np.allclose([1e10,1e-8], [1.0001e10,1e-9])
False
>>> np.allclose([1.0, np.nan], [1.0, np.nan])
False
>>> np.allclose([1.0, np.nan], [1.0, np.nan], equal_nan=True)
True
原文地址:https://www.cnblogs.com/onenoteone/p/12441799.html