python - 如何计算两个 NumPy 数组中不匹配元素的总和
问题描述
所以我目前正在尝试实现一个感知器,我有两个 NumPy 数组,尺寸为 1x200。我想检查两个矩阵中的每个元素,并取回彼此不匹配的元素的总和。我试着做这样的事情:
b = (x_A > 0).astype(int)
b[b == 0] = -1
现在我想将这个矩阵与另一个矩阵进行比较,因此我的问题是,有没有办法避免 for 循环并仍然得到我想要的(不匹配的元素的总和)?
解决方案
您应该可以直接执行此操作 - 假设您的数组具有相同的尺寸。对于 numpy 数组a
和b
:
np.sum(a != b)
a != b
给出一个布尔数组(当它们在元素上不相等时为真,当它们相等时为假). Sum 将为您提供所有不相等元素的计数。