我有两个numpy数组。其中y
相应元素的使用1d布尔阵列的FIlter 2d阵列
x = [[1,2], [3,4], [5,6]]
y = [True, False, True]
我想获得的X
元素是True
:
filtered_x = filter(x,y)
print(filtered_x) # [[1,2], [5,6]] should be shown.
我试过np.extract
,但它似乎只工作时x
是一维数组。我如何提取x
对应的值y
的元素是True
?
x [y]。它被称为布尔索引。 –
您可以尝试使用列表理解,例如'[val for x in x [x.index(val)]]]'。简单而优雅。 –
@AsadMoosvi和比numpy内置函数慢,也不返回np.array ... –