矩阵乘法与常数

时间:2013-04-03 07:25:49

标签: python matrix matrix-multiplication

我想将给定的1x1x3矩阵乘以常数值。

a= [[[1, 2, 3]]]

预期结果是

a*3 = [[[3,6,9]]]

请帮我解决这个问题

4 个答案:

答案 0 :(得分:4)

使用NumPy

In [1]: import numpy as np

In [2]: a = np.array([[[1, 2, 3]]])

In [3]: a
Out[3]: array([[[1, 2, 3]]])

In [4]: a*3
Out[4]: array([[[3, 6, 9]]])

答案 1 :(得分:1)

尝试:

a= [[[1, 2, 3]]]
for i in range(len(a[0][0])):
    a[0][0][i] *= 3

print a    

答案 2 :(得分:1)

这是使用列表推导的一种方式:

>>> a = [[[1, 2, 3]]]
>>> b = [[x*3 for x in a[0][0]]]
>>> b
[[3, 6, 9]]

答案 3 :(得分:1)

以下是使用纯Python的方法:

a3 = [[[el * 3 for el in col] for col in row] for row in a]

这适用于任何形状的3D矩阵,而不仅仅是1x1x3。

但是,如果这是您需要定期进行的事情,我建议您学习NumPy。然后你就可以写:

a3 = a * 3