选择索引,其中x是nan,而y在两个值之间

时间:2014-03-31 07:52:42

标签: python numpy

我有两个阵列

x = np.array([1,np.nan,3,np.nan,5])
y = np.array([1,-2,3,4,15])

现在我想选择x = np.nany位于010之间的索引。分别是这样的:

np.where(isnan(x))
(array([1,3])
np.where(y>=0)
(array([0, 2, 3, 4])
np.where(y<10)
(array([0, 1, 2, 3])

但该怎么做:

(array[3])

1 个答案:

答案 0 :(得分:2)

您需要使用括号(由于运算符优先级)和按位&运算符来AND您的条件:

In [3]:

np.where(isnan(x) & (y >=0) & (y<10))
Out[3]:
(array([3], dtype=int64),)