numpy检查所有元素是否为False

时间:2020-01-24 14:04:28

标签: python numpy

我有一个numpy一维数组,其中包含TrueFalse的布尔值。我想检查所有它们是否都是False,以便返回单个True/False,无论numpy数组中的所有元素是False还是True

x = np.array([False, False, False])  # this should return True, since all values are False
y = np.array([True, True, True])  # this should return False, since all values are True
z = np.array([True, False, True]) # this should return False, since not all values are False

我调查了np.all(),但这并不能解决我的问题。

谢谢!

2 个答案:

答案 0 :(得分:3)

您可以使用Numpy的all()

numpy.all(a, axis=None, out=None, keepdims=<no value>)[source]

测试沿给定轴的所有数组元素的求值是否为True。

for numpy_array in (x, y, z):
    print((~numpy_array).all())

输出应为:

True
False
False

答案 1 :(得分:1)

将每个项目与False比较,然后减少使用np.all

np.all(x == False)
相关问题