numpy中许多向量的优雅对明智的标量产品

时间:2016-06-30 10:24:24

标签: python numpy

我有两组n*m向量x_ijy_ijd存储在两个np.ndarray XY中形状n*m*d。 我想获得标量积n*m的{​​{1}}矩阵。 目前我这样做:

x_ij.y_ij

它有效,但感觉比它需要的更丑陋/更黑。是否有更优雅的方式来进行此操作?

1 个答案:

答案 0 :(得分:1)

嗯,你保持前两个轴对齐,并减少两个输入上的最后一个轴。对于这种情况,解决问题的一种有效方法是使用np.einsum,就像这样 -

np.einsum('ijk,ijk->ij',X,Y)