У меня есть эти массивы:
a = np.array([
[1,2],
[3,4],
[5,6],
[7,8]])
b = np.array([1,2,3,4])
и я хочу, чтобы они умножались следующим образом:
[[1*1, 2*1],
[3*2, 4*2],
[5*3, 6*3],
[7*4, 8*4]]
... в основном out[i] = a[i] * b[i], где a[i].shape есть (2,) и b[i], тогда является скаляром.
Какой трюк? np.multiply похоже, не работает:
>>> np.multiply(a, b)
ValueError: operands could not be broadcast together with shapes (4,2) (4)