从更大的多维数组中删除子数组,而无需更改尺寸

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

具有数组a和b,我想获得从b中排除所有a的数组c。

a=np.array([8,14])

[ 8 14]

b=np.array([[3,2],[8,14],[17,65]])

[[ 3  2]
 [ 8 14]
 [17 65]]

所需的c是:

print(c)
[[ 3  2]
 [17 65]]

numpy delete似乎没有按预期方式工作,因为它将索引作为删除数组部分的输入。

np.delete(b, a)
[ 3  2  8 14 17 65]
python numpy numpy-ndarray
1个回答
0
投票

这是一个非笨拙的解决方案,但仍然可以在这里解决您的问题:

c = [i for i in b if i not in a]
print(c)
© www.soinside.com 2019 - 2024. All rights reserved.