我有两个具有形状的数组:
z1.shape
(74L, 1L)
z2.shape
(74L,)
为什么乘法会产生 74x74 大小的数组:
z3 = np.multiply(z1,z2)
z3.shape
(74L, 74L)
我期望通过逐个元素相乘来实现形状为 (74L, 1L) 的 z3
如何实现 z3 作为 z1 和 z2 的逐个元素相乘
最佳答案
您可以执行z1*z2[:,None]
。额外的 None 索引将一维数组拉伸(stretch)为列数组。
关于python理解数组乘法行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37421845/