与常数的矩阵乘法

问题描述 投票:0回答:4

如何将以下 1x1x3 矩阵与常数值(标量)相乘:

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

例如,将

a
乘以
3
应产生以下结果:

a*3 = [[[3,6,9]]]
python matrix matrix-multiplication scalar
4个回答
5
投票

使用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
投票

尝试:

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

print a    

1
投票

这是使用列表理解的一种方法:

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

1
投票

这里有一种使用纯 Python 的方法:

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

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

但是,如果这是您需要定期做的事情,我会鼓励您学习NumPy。然后你就可以写:

a3 = a * 3
© www.soinside.com 2019 - 2024. All rights reserved.