[Numpy-discussion] A basic question on the dot function
Julien Hillairet
julien.hillairet@gmail....
Wed Oct 17 03:11:36 CDT 2007
2007/10/16, Timothy Hochberg <tim.hochberg@ieee.org>:
>
>
> You might try tensordot. Without thinking it through too much:
> numpy.tensordot(a0, a1, axes=[-1,-1])
> seems to do what you want.
>
>
Thank you.
However, it works only for this simple example, where a0 and a1 are similar.
The tensor product increase the rank of the output, doesn't it ?
Although the dot product decrease the rank. Is there a ¨proper" solution if
a and b are general (3,N) vectors ? By example :
In [16]: a = random.random_sample((3,5))
In [17]: b = random.random_sample((3,5))
what I'm searching for is :
In [18]: dotprod2(a,b)
Out[18]: array([ 0.28354876, 0.54474092, 0.22986942, 0.42822669,
0.98179793])
where I defined a "classical" (in the way I understand it. I may not
understand it properly ?) dot product between these 2 vectors.
def dotprod2(a,b):
return sum(a*b,axis=0)
or in maths notation : c_j = \sum_i a_{ij} b_{ij}
Thank in advance,
JH
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://projects.scipy.org/pipermail/numpy-discussion/attachments/20071017/ff4b5ead/attachment.html
More information about the Numpy-discussion
mailing list