【发布时间】:2019-10-12 13:12:07
【问题描述】:
有两个 ndarray,数组 d 形状为 (3,10,10) 和数组 e 形状为 (3,10),我如何计算 d 的第一个 10x10 矩阵的点积和e的第一行、d的第二个10x10矩阵和e的第二行等
例如,有以下两个数组:
d = np.array([np.diag([1,1,1,1,1,1,1,1,1,1]),
np.diag([2,2,2,2,2,2,2,2,2,2]),
np.diag([3,3,3,3,3,3,3,3,3,3])])
e = np.arange(30).reshape((3,10))
如何计算 3x10 数组:
array([[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[20, 22, 24, 26, 28, 30, 32, 34, 36, 38],
[60, 63, 66, 69, 72, 75, 78, 81, 84, 87]])
我尝试使用np.dot 和np.tensordot 并在这样做之前将新轴转置并添加到e,但我不知道如何解决这个问题。
【问题讨论】:
标签: python numpy linear-algebra tensor dot-product