具有两个阵列是这样numpy的乘以不同的形状
x = [a,b]
y = [p,q,r]
我需要一起相乘这对一个产品c
这应该是这样的,
c = [a*p, a*q, a*r, b*p, b*q, b*r]
然而x*y
提供了以下错误,
ValueError: operands could not be broadcast together with shapes (2,) (3,)
我可以这样做,
for i in range(len(x)):
for t in range(len(y)):
c.append(x[i] * y[t]
但真正的长度我x
和y
是相当大的有啥做出这样的乘法没有循环的最有效方式。
“a”,“b”,“p”,“q”等是标量还是其他? – Divakar
@Divakar他们是浮动的,所以我想他们是标量不是吗? – rksh
看来你已经错过了'a * r' – Kasramvd