Python Numpy“Invert”布尔掩码操作

13z8s7eq  于 12个月前  发布在  Python
关注(0)|答案(1)|浏览(84)

当我有一个数组a和一个布尔掩码b时,我可以找到“掩码”向量c。

a = np.array([1, 2, 4, 7, 9])
b = np.array([True, False, True, True, False])

c = a[b]

现在假设,反过来。我有c和B,想到达d(下面)。最简单的方法是什么?

c = np.array([1, 4, 7])
b = np.array([True, False, True, True, False])

d = np.array([1, 0, 4, 7, 0])
tkclm6bt

tkclm6bt1#

您可以使用:用途:

d = np.zeros_like(b, dtype=c.dtype)
d[b] = c

输出:array([1, 0, 4, 7, 0])

相关问题