Abs*_*Abs 4 python arrays numpy python-3.x numpy-ufunc
我对 numpy 有点陌生,并且正在努力解决这个问题。我有两个二维 numpy 数组:
array1 = [a1, a2, ..., an]
array2 = [b1, b2, ..., am]
Run Code Online (Sandbox Code Playgroud)
a1, a2, b1, 和b2都是一维数组,其中正好有 100 个浮点数。然而,array1与array2具有不同的长度。所以array1和分别array2具有形状(n, 100)和(m, 100),其中n和m是任意长度。
我想在它们之间执行某种修改后的点积,以便我可以输出以下矩阵:
array([[ a1+b1, a1+b2, a1+b3, ...],
[ a2+b1, a2+b2, a2+b3, ...],
[ a3+b1, a3+b2, a3+b3, ...],
[...]])
Run Code Online (Sandbox Code Playgroud)
我明白这np.dot(array1, array2.T)让我非常接近。它只是给我a1•b1而不是a1+b1在所需的输出数组中。
使用 numpy 获取所需数组的最有效的计算方法是什么?提前致谢!
使用np.outer用于此目的的 ufunc:
np.add.outer(array1,array2)
Run Code Online (Sandbox Code Playgroud)
例子:
array1 = np.array([1,2,3])
array2 = np.array([1,2])
Run Code Online (Sandbox Code Playgroud)
输出:
[[2 3]
[3 4]
[4 5]]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
111 次 |
| 最近记录: |