我有一个蒙面数组:
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)
答案 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]),)