首页 > 解决方案 > 确定 2 个 numpy 数组不同的索引

问题描述

我有 2 个长的 numpy 数组,都有 508 个元素。我想获得它们不同之处的索引。我在这里看到的大多数确定差异的解决方案对不适合我的情况的数组进行排序。

例子

arr_1 = [0, 1, 4, 0, 2, 2, 0, 3, 5, ... , 5, 5, 6]

arr_1 = [0, 1, 0, 0, 0, 2, 0, 3, 0, ... , 5, 0, 6]

希望返回类似的东西:

solut = [0, 0, 1, 0, 1, 0, 0, 0, 1, ... , 0, 1, 0]

甚至

solut = [2, 4, 8, ..., n-2]

在 numpy 中有没有一种有效的方法来做到这一点?

标签: pythonnumpyarray-difference

解决方案


你可以只写arr = arr_1 == arr_2。此代码为您提供一个布尔数组,如果它们相等,则为 true,否则为 false。然后你可以用它np.where来查找数组是否相等的索引。


推荐阅读