作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
给定数组 A 和 B 的两个数组,我需要测试 A (ai) 中的每个子数组与其 B (bi) 中相应子数组的相等性:
import numpy as np
a1 = np.array([1, 2, 3])
a2 = np.array([3, 4, 5])
a3 = np.array([2, 4, 6])
A = np.array([a1, a2, a3])
b1 = np.array([3, 2, 1])
b2 = np.array([3, 4, 5])
b3 = np.array([6, 4, 2])
B = np.array([b1, b2, b3])
def compare_arrays(A, B):
#ret = A == B
#ret = np.array_equal(A, B)
return ret
print(compare_arrays(A, B))
毫不奇怪,我使用 A == B
得到的输出:[[False True False][ True True True][False True False]]
。
不出所料,我使用 np.array_equal(A, B)
得到的输出:False
。
我想要得到的输出:[[False, True, False]]
。
我想知道是否存在我尚未找到的现成解决方案,或者我是否应该实现自己的解决方案。
最佳答案
您可以从 A == B 沿 axis=1 获得逻辑结果。
def compare_arrays(A, B):
ret = np.equal(A, B).all(axis=1)
return ret
关于python - 如何在 Numpy 中比较两个数组 'array-elementwise' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41523061/
我是一名优秀的程序员,十分优秀!