[Numpy-discussion] Multiply along axis

Robert Elsner mlist@re-factory...
Wed Jun 29 09:32:14 CDT 2011

Hello everyone,

I would like to solve the following problem (preferably without
reshaping / flipping the array a).

Assume I have a vector v of length x and an n-dimensional array a where
one dimension has length x as well. Now I would like to multiply the
vector v along a given axis of a.

Some example code

a = np.random.random((2,3))
x = np.zeros(2)

a * x	# Fails because not broadcastable

So how do I multiply x with the columns of a so that for each column j
a[:,j] = a[:,j] * x

without using a loop. Is there some (fast) fast way to accomplish that
with numpy/scipy?

Thanks for your help
Robert Elsner

More information about the NumPy-Discussion mailing list