gpt4 book ai didi

python - 从numpy数组中查找和删除列

转载 作者:行者123 更新时间:2023-12-04 10:00:40 24 4
gpt4 key购买 nike

我正在尝试从数组中删除特定列:

data = array([[ 6,  3,  3],
[ 7, 4, -1]])

target = array([[3]
[-1]])

我想在 data 内找到该列的索引与 target 相同,以便我可以调用:
np.delete(data, index, axis=1)

看起来像是 all 的某种组合和 where可能是答案,但我就是无法解决。

最佳答案

口罩 (data == target).all(axis=0)将检查沿列的相等性。您不需要对 where 做任何事情或 delete .只需按原样使用掩码:

mask = (data == target).all(axis=0)
data = data[:, ~mask]

事实上,计算不同元素的掩码可能会更快,因为那些是您想要保留的。
mask = (data != target).any(axis=0)
data = data[:, mask]

关于python - 从numpy数组中查找和删除列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61838349/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com