Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想用掩码删除数组的元素。例如:
row = 24 col = 24 size = row * col a = numpy.ones((size)) mask = numpy.empty((col), dtype=numpy.bool)
的mask值为False或True。如果mask[x] = True, 那么 的元素a[x * row:(x + 1) * row]应该被删除。 PS:在我的情况下,一个索引值对应一个块元素a
mask
False
True
mask[x] = True
a[x * row:(x + 1) * row]
a
通过这个语法你可以删除数组的元素
smaller_array =np.delete(array,index)
array 表示数组值 index 表示元素的位置
对不起,我听错了。这是一种方法,但使用列表理解:
idx_delete=np.unique(np.concatenate([np.arange(x*row,row*(x+1)) for x in xrange(row) if mask[x]])) np.delete(a,idx_delete)