检查数组的值是否等于或非常接近零

Gab*_*iel 6 python arrays performance numpy

我有一个一个维numpy数组,我需要找出是否任何价值为零或非常接近.有了这条线,我可以快速检查零:

if 0. in my_array:
    # do something
Run Code Online (Sandbox Code Playgroud)

但是我也有非常小的元素,比如1.e-22,我也想把它视为零(否则我会得到一个零除以前的警告)

假设我的阈值是1.e-6,我想有效地检查我的数组中的任何值是否小于该值.我怎样才能做到这一点?

aba*_*ert 8

没有理由在Python中循环; 只是广播abs和<和使用np.any:

np.any(np.absolute(my_array) < eps)
Run Code Online (Sandbox Code Playgroud)