gpt4 book ai didi

Python 比较两个 3 维 numpy 数组

转载 作者:行者123 更新时间:2023-11-30 22:58:11 28 4
gpt4 key购买 nike

我有两个 numpy 数组:

A.shape = (nA,x,y)

B.shape = (nB,x,y).

我想找到所有子数组,使得

A(i,:,:) == B(j,:,:).

我知道我可以编写一个双 for 循环并使用

np.array_equal(A(i,:,:),B(j,:,:)

但是,有没有更高效的方法呢?

最佳答案

您应该只需要循环遍历其中一个数组,因为之后您将找不到任何其他唯一的子数组,并且您可以通过简单的列表理解来完成此操作。

subarrays = [x for x in A if x in B]

如果您只想要索引而不是存储整个子数组,您可以这样做:

indices = [x[0] for x in enumerate(A) if x[1] in B]

关于Python 比较两个 3 维 numpy 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36297078/

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