[Numpy-discussion] Apply transform to many small matrices

Nathaniel Smith njs@pobox....
Wed Feb 27 17:44:26 CST 2013


On 27 Feb 2013 12:57, "Jorge Scandaliaris" <jorgesmbox-ml@yahoo.es> wrote:
>
> Hi,
> First of all excuse me if this is a trivial question. I have the feeling
it is,
> but searching and looking through the docs has proven unsuccesful so far.
>
> I have an ndarray A of shape (M,2,2) representing M 2 x 2 matrices. Now I
want
> to apply a transform T of shape (2,2) to each of matrix. The way I do
this now
> is by iterating over all rows of A multiplying the matrices using
numpy.dot():
>
> for row in np.arange(A.shape[0]):
>     A[row] = np.dot(A[row],T)
>
> but this seems to be slow when M is large and I have the feeling there
must be a
> way of doing it better.

Pretty sure the code you wrote above is equivalent to
  np.dot(A, T, out=A)

-n
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20130227/a1b15e01/attachment.html 


More information about the NumPy-Discussion mailing list