[英]How to multiply numpy 2D array with numpy 1D array?
两个数组:
a = numpy.array([[2,3,2],[5,6,1]])
b = numpy.array([3,5])
c = a * b
我想要的是:
c = [[6,9,6],
[25,30,5]]
但是,我收到了这个错误:
ValueError: operands could not be broadcast together with shapes (2,3) (2)
如何将 nD数组与1D数组相乘 ,其中len(1D-array) == len(nD array)
?
您需要将数组b转换为(2,1)形状数组,在索引元组中使用None或numpy.newaxis
:
import numpy
a = numpy.array([[2,3,2],[5,6,1]])
b = numpy.array([3,5])
c = a * b[:, None]
这是文件 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.