我正在尝试将一个3D数组乘以一个1D数组,使得沿着第三个(深度:d)维度的每个2D数组计算如下:
1D_array[d]*2D_array
最终我得到了一个看起来像这样的数组:
[[
[1,1]
[1,1]]
[
[2,2]
[2,2]]
[
[3,3]
[3,3]]]
如果正确地将np.ones((3,2,2))与[1,2,3]相乘,将会得到什么结果?
我已经尝试了一段时间,但似乎无论我做什么,都不能得到这个结果,只有类似的变化。我应该如何正确地做这件事呢?
非常感谢您的帮助。
a
和b
,您是否在寻找b[:, None] * a
? - Alok Singhalb=np.ones((3,2,2)) a=np.array(range(-1,2)) ans=b[:, None]*a
但是它抛出了一个错误:ValueError: operands could not be broadcast together with shapes (1,3) (3,2,2)
。我确定我只是做了一些愚蠢的事情? - dscma[:, None, None] * b
。 - Alok Singhal