[Numpy-discussion] how to multiply the rows of a matrix by a different number?
Jose Borreguero
borreguero@gmail....
Wed Mar 4 13:17:26 CST 2009
Sweet!
I found that *M*b.reshape(10000,1)* will also do the trick. Any guess which
method is faster?
On Tue, Mar 3, 2009 at 9:11 PM, <josef.pktd@gmail.com> wrote:
> On Tue, Mar 3, 2009 at 8:53 PM, Jose Borreguero <borreguero@gmail.com>
> wrote:
> > I guess there has to be an easy way for this. I have:
> > M.shape=(10000,3)
> > N.shape=(10000,)
> >
> > I want to do this:
> > for i in range(10000):
> > M[i]*=N[i]
> > without the explicit loop
> >
>
> >>> M = np.ones((10,3))
> >>> N = np.arange(10)
> >>> N.shape
> (10,)
> >>> (N[:,np.newaxis]).shape
> (10, 1)
> >>> M*N[:,np.newaxis]
> array([[ 0., 0., 0.],
> [ 1., 1., 1.],
> [ 2., 2., 2.],
> [ 3., 3., 3.],
> [ 4., 4., 4.],
> [ 5., 5., 5.],
> [ 6., 6., 6.],
> [ 7., 7., 7.],
> [ 8., 8., 8.],
> [ 9., 9., 9.]])
>
> >>> M *= N[:,np.newaxis]
> >>> M
>
> Josef
> _______________________________________________
> Numpy-discussion mailing list
> Numpy-discussion@scipy.org
> http://projects.scipy.org/mailman/listinfo/numpy-discussion
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://projects.scipy.org/pipermail/numpy-discussion/attachments/20090304/88bd0765/attachment.html
More information about the Numpy-discussion
mailing list