Python 通过多列创建矩阵

Python 通过多列创建矩阵,python,Python,我想创建如图所示的矩阵: 通过将矩阵的列以元素方式相乘来创建新矩阵 不使用3 for循环就可以创建它吗 如果没有实际输入和所需的输出数据,验证有点困难,但您可以使用NumPy整形,在没有任何for循环的情况下执行操作: a = numpy.arange(3 * 6).reshape(3, 6) b = numpy.arange(3 * 3).reshape(3, 3) c = numpy.arange(3 * 2).reshape(3, 2) x = a.reshape(3, 3, 2).tr

我想创建如图所示的矩阵: 通过将矩阵的列以元素方式相乘来创建新矩阵

不使用3 for循环就可以创建它吗


如果没有实际输入和所需的输出数据,验证有点困难,但您可以使用NumPy整形,在没有任何for循环的情况下执行操作:

a = numpy.arange(3 * 6).reshape(3, 6)
b = numpy.arange(3 * 3).reshape(3, 3)
c = numpy.arange(3 * 2).reshape(3, 2)

x = a.reshape(3, 3, 2).transpose(1, 0, 2) * b[..., None]
y = a.reshape(3, 3, 2).transpose(0, 2, 1) * c[..., None]

你试过
numpy.multiply
和2个循环吗?