优化调用以检索掩码数组的掩码元素的索引?

时间:2014-10-31 04:53:47

标签: python arrays

我有一个蒙面数组:

a = np.arange(7)
a = np.ma.masked_greater(a,4)

a包含

masked_array(data = [0 1 2 3 4 -- --],
             mask = [False False False False False  True  True],
       fill_value = 999999)

我现在正在寻找一种有效的方法来检索列出每个被屏蔽元素的索引的数组,即

res = [5, 6]

没有循环通过掩码:

res = []  
for idx, data in enumerate(np.ma.getmaskarray(a)):
    if data:
      res.append(idx)

1 个答案:

答案 0 :(得分:1)

>>> a
masked_array(data = [0 1 2 3 4 -- --],
             mask = [False False False False False  True  True],
       fill_value = 999999)
>>> np.where(np.ma.getmaskarray(a))
(array([5, 6]),)