使用相同形状的现有遮罩遮罩numpy数组

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

说我有一个名为m1 = [[False, True, False], [True, False, True]]并且我想找到一个掩码m2使其(i,j)项为True iff j >= 0 and m1[i, j+1] == True。关于如何实现这一目标的任何优雅而有效的想法?谢谢

python arrays numpy mask
1个回答
0
投票

这是切片和使用二进制运算符的方法:

m1 = np.array([[False, True, False], [True, False, True]])

m2 = np.full(m1.shape, False)
m2[:, :-1] = m1[:, 1:] | m2[:, :-1]

print(m2)

array([[ True, False, False],
       [False,  True, False]])
© www.soinside.com 2019 - 2024. All rights reserved.