如何在多个条件下使用np.where

使用np.where()获取满足所有这些条件的数组元素的索引时,如何指定多个条件?

a = np.array([1, 2, 3, 4, 5, 6]) 
print(np.where(a > 2 and a < 5))

当我说

print(np.where(a > 2))

我得到了索引[2,3,4,5],但现在我只想得到[2,3]。

评论
大三元
大三元

You have to use bitwise operators, & for and, | for or, and so on.

以你的例子

a = np.array([1, 2, 3, 4, 5, 6])
np.where((a > 2) & (a < 5))

退货

(array([2, 3], dtype=int64),)
点赞
评论