【发布时间】:2015-07-01 14:07:24
【问题描述】:
我有一个矩阵 M
type(M) = numpy.ndarray
M.shape = (500,500)
还有一个包含 100 个值的数组
arr = numpy.arange(100)
我想将矩阵 M 形 (500,500) 乘以 arr 中的每个值。也就是说,每个矩阵条目都乘以arr 中的一个值,结果输出将是一个包含 100 个矩阵的数组。
对于arr 中的每个值,将该值乘以矩阵,并创建一个结果数组,即[M1 M2 ... M99 M100]。
我会将其编码为
import numpy as np
for i in arr:
x = np.asarray( i * M)
我希望结果 x 是一个类似 [M1 M2 ... M99 M100] 的数组,一个由 100 个矩阵组成的数组,形状为 500 x 500。
但是,上面的代码只输出一个矩阵。
我该如何更改?
【问题讨论】:
-
嗯,我看不出你在哪里创建一个 np 数组,你只是用你的新数组覆盖
x -
试试
x = [M * a for a in arr]
标签: python arrays numpy matrix