【发布时间】:2021-08-06 13:58:59
【问题描述】:
我想重写 numpy.matmul() 函数,以便计算这两个向量之间有多少元素按元素相等,而不是两个矩阵向量的点积。
例子:
In [1]: import numpy as np
In [2]: m1 = np.matrix([[1, 2], [3, 4]])
In [3]: m2 = np.matrix([[1, 3], [2, 4]])
In [4]: np.matmul(m1, m2)
Out[4]:
matrix([[ 5, 11],
[11, 25]])
我想要以下结果,而不是上面的结果:
In [4]: myfunction(m1, m2)
Out[4]:
matrix([[2, 0],
[0, 2]])
[1, 2] 和 [1, 2] 点积 是 5,但我想要 np.sum([1,2] == [1,2]),即2。 我的问题是如何更改两个 v1 和 v2np.matmul() 函数 np.dot() 乘积/strong> 带有 np.sum(v1 == v2)
的向量【问题讨论】:
-
我会说重新定义内置方法不是一个好习惯......为什么不直接定义自己并使用 numba 来提高性能?
标签: python numpy matrix overriding linear-algebra