Awesome. I just added rollaxis(c,0,3) and was done. Cheers mate.
On Fri, Jul 4, 2008 at 2:38 AM, lorenzo bolla <[EMAIL PROTECTED]> wrote: > If a and b are 2d arrays, you can use numpy.dot: > > In [36]: a > Out[36]: > array([[1, 2], > [3, 4]]) > In [37]: b > Out[37]: > array([[5, 6], > [7, 8]]) > In [38]: numpy.dot(a,b) > Out[38]: > array([[19, 22], > [43, 50]]) > > If a and b are 3d arrays of shape 2x2xN, you can use something like that: > In [52]: a = numpy.arange(16).reshape(2,2,4) > In [53]: b = numpy.arange(16,32).reshape(2,2,4) > In [54]: c = numpy.array([numpy.dot(a[...,i],b[...,i]) for i in > xrange(a.shape[-1])]) > In [55]: c.shape > Out[55]: (4, 2, 2) > > Here c has shape (4,2,2) instead (2,2,4), but you got the idea! > > hth, > L. > > > On Thu, Jul 3, 2008 at 9:53 PM, Jonno <[EMAIL PROTECTED]> wrote: >> >> I have two 2d arrays a & b for example: >> a=array([c,d],[e,f]) >> b=array([g,h],[i,j]) >> Each of the elements of a & b are actually 1d arrays of length N so I >> guess technically a & b have shape (2,2,N). >> However I want to matrix multiply a & b to create a 2d array x, where >> the elements of x are created with element-wise math as so: >> x[0,0] = c*g+d*i >> x[0,1] = c*h+d*j >> x[1,0] = e*g+f*i >> x[1,1] = e*h+f*j >> >> What is the simplest way to do this? I ended up doing the matrix >> multiplication of a & b manually as above but this doesn't scale very >> nicely if a & b become larger in size. >> >> Cheers, >> >> Jonno. >> >> -- >> "If a theory can't produce hypotheses, can't be tested, can't be >> disproven, and can't make predictions, then it's not a theory and >> certainly not science." by spisska on Slashdot, Monday April 21, 2008 >> _______________________________________________ >> Numpy-discussion mailing list >> [email protected] >> http://projects.scipy.org/mailman/listinfo/numpy-discussion > > > > -- > "Whereof one cannot speak, thereof one must be silent." -- Ludwig > Wittgenstein > _______________________________________________ > Numpy-discussion mailing list > [email protected] > http://projects.scipy.org/mailman/listinfo/numpy-discussion > > -- "If a theory can't produce hypotheses, can't be tested, can't be disproven, and can't make predictions, then it's not a theory and certainly not science." by spisska on Slashdot, Monday April 21, 2008 _______________________________________________ Numpy-discussion mailing list [email protected] http://projects.scipy.org/mailman/listinfo/numpy-discussion
