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

问题描述 投票:0回答:1

当我使用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]。

python numpy np
1个回答
2
投票

你必须使用位运算符。& 为和。| 为或,等等。

以你为例。

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

返回

(array([2, 3], dtype=int64),)
© www.soinside.com 2019 - 2024. All rights reserved.