![](https://secure.gravatar.com/avatar/78979acd7771e6b6ba55a8923b5793f3.jpg?s=120&d=mm&r=g)
7 Aug
2009
7 Aug
'09
2:19 p.m.
Hi, the documentation for dot says that a value error is raised if: If the last dimension of a is not the same size as the second-to-last dimension of b. (http://docs.scipy.org/doc/numpy/reference/generated/numpy.dot.htm) This doesn't appear to be the case:
a = array([[1,2],[3,4]]) b = array([1,2]) dot(a,b) array([5,11])
I can see *how* 5,11 is obtained, but it seems this should have raised a ValueError since the 2 != 1. So the actual code must do something more involved. When I think about broadcasting, it seems that maybe b should have been broadcasted to: --> array([[1,2],[1,2]]) and then the multiplication done as normal (but this would give a 2x2 result). Can someone explain this to me?