Skip to main content
 首页 » 编程设计

python之转置 Numpy 数组(向量)

2025年05月04日14bluestorm

a = np.array([0,1,2]) 
b = np.array([3,4,5,6,7]) 
 
... 
 
c = np.dot(a,b) 

我想转置 b,以便计算 a 和 b 的点积。

请您参考如下方法:

您可以为此使用 numpy 的广播:

import numpy as np 
 
a = np.array([0,1,2]) 
b = np.array([3,4,5,6,7]) 
 
 
In [3]: a[:,None]*b 
Out[3]:  
array([[ 0,  0,  0,  0,  0], 
       [ 3,  4,  5,  6,  7], 
       [ 6,  8, 10, 12, 14]]) 

不过,这与点积无关。但是你在评论中说,你想要这个结果。

您还可以使用 numpy 函数 outer:

In [4]: np.outer(a, b) 
Out[4]:  
array([[ 0,  0,  0,  0,  0], 
       [ 3,  4,  5,  6,  7], 
       [ 6,  8, 10, 12, 14]])