所以我基本上有矩阵
a = [x1,y1,z1
x2,y2 z2
.....
xN,yN,zN]
和b = [i1,j1,k1
i2,j2,k2
....]
并且想要取b的行1的行1的点积,b的行2的行2,依此类推。它们都是形状(3,71216)但是
np.dot(a,b)
给出ValueError:对象未对齐。 任何帮助将不胜感激。
答案 0 :(得分:3)
这是因为np.dot
期望第一个参数的行数等于第二个参数的行数,如错误消息所示。
您需要对齐数组:
np.dot(a, b.T)
你的问题很混乱,因为你说数组有形状(3,71216),但你的例子显示了转置(71216,3)。
无论如何,听起来你只是想要这个,而不是点积:
(a * b).sum(axis=0)