我需要得到一个向量与多个向量的点积。示例代码:
a = np.array([0, 1, 2])
b = np.array([
[0, 1, 2],
[4, 5, 6],
[-1, 0, 1],
[-3, -2, 1]
])
我想得到b
的每一行与a
的点积,我可以迭代:
result = []
for row in b:
result.append(np.dot(row, a))
print(result)
其给出:[5, 17, 2, 0]
我怎样才能不经过迭代就得到这个呢?谢谢!
3条答案
按热度按时间kkbh8khc1#
使用
numpy.dot
或不带for
循环的numpy.matmul
:输出:
eeq64g8w2#
我只做
@
mv1qrgav3#
如果需要将两个向量数组逐行相乘,则该函数非常有用