On Wed, Jun 29, 2011 at 10:32 AM, Robert Elsner <ml...@re-factory.de> wrote: > > 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? >
Is this what you want? a * x[:,None] or a * x[:,np.newaxis] or more generally a * np.expand_dims(x,1) Skipper _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion