我有一个矩阵数组,我想用不同的数字乘以每个矩阵。 我尝试了以下方法:
>>> import numpy as np
>>> c = np.array([[[1, 2],[3, 4]],[[1, 2],[3, 4]]])
>>> d = np.array([0.1, 0.2])
>>> d*c
array([[[ 0.1, 0.4],
[ 0.3, 0.8]],
[[ 0.1, 0.4],
[ 0.3, 0.8]]])
虽然我的意图是获得这个结果 -
>>> np.array([d[0]*c[0], d[1]*c[1]])
array([[[ 0.1, 0.2],
[ 0.3, 0.4]],
[[ 0.2, 0.4],
[ 0.6, 0.8]]])
什么是最符合NumPy的方法来实现它?
d[:, np.newaxis, np.newaxis]
有区别吗? - Ohmnp.newaxis is None
返回True
:np.newaxis
只是None
的更明确的同义词,在这个上下文中意味着“在这里插入另一个轴”。 - xnx