我有一个长度为n
的布尔掩码数组a
:
a = np.array([True, True, True, False, False])
我有一个包含n
列的二维数组:
b = np.array([[1,2,3,4,5], [1,2,3,4,5]])
我想要一个新的数组,其中只包含“True”值,例如
c = ([[1,2,3], [1,2,3]])
c = a * b
无法使用,因为它也包含了假列中的“0”,而我不想要这个
c = np.delete(b, a, 1) does not work
有什么建议吗?
numpy.compress
(用于布尔值)或numpy.take
(用于索引),请参见https://dev59.com/4ek5XIcBkEYKwwoY9-lg - Tomnp.bool
。所以我添加了b[:,a.astype(np.bool)]
。 - Markus Weber