Skip to main content
 首页 » 编程设计

python之创建具有向量倍数的 numpy 矩阵的最快方法

2025年05月04日12Renyi-Fan

令 x,y 为两个包含 N 个元素的 numpy 数组。我想创建一个 numpy 矩阵,其列是 x 的缩放移位版本。例如,说

m=[0.2, 0.4, 1.2] 

然后我要矩阵

X = [0.2x+y, 0.4x+y, 1.2x+y]

什么是最快的(也是最简单的,最简单的是第二优先)的方法。

目前我正在做这样的事情。

ListVec = [m[i]*x+y for i in numpy.arange(len(m))] 
X = numpy.array(ListVec).T 

请您参考如下方法:

import numpy as np  
m = np.array([0.2, 0.4, 1.2]) 
x = 5 
y = 3 
X = m*x+y 

这叫做 broadcasting在 numpy 中(既简单又快速;))