检查 NumPy 数组的所有元素是否符合条件

Jef*_*eff 2 python numpy conditional-statements

对于给定的二维数组,如下所示,我需要检查所有元素是否小于 0.2。

a = np.array([[0.26002, 0.13918, 0.6008 ],
              [0.2997 , 0.28646, 0.41384],
              [0.41614, 0.36464, 0.21922]])
Run Code Online (Sandbox Code Playgroud)

这是我的代码,基于这个问题

 res = abs(a<0.2)
 all(i==True for i in res)
Run Code Online (Sandbox Code Playgroud)

但是代码抱怨

ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Run Code Online (Sandbox Code Playgroud)

cs9*_*s95 6

关键是在np.all这里使用:

(np.abs(a) < 0.2).all()
# False

(a < 1).all()
# True
Run Code Online (Sandbox Code Playgroud)