On 3/24/07, Travis Oliphant <[EMAIL PROTECTED]> wrote:
Alan G Isaac wrote: > On Sat, 24 Mar 2007, Travis Oliphant apparently wrote: > >> My opinion is that a 1-d array in matrix-multiplication >> should always be interpreted as a row vector. Is this not >> what is currently done? If not, then it is a bug in my >> mind. >> > > >>>> N.__version__ >>>> > '1.0' > >>>> I >>>> > matrix([[ 1., 0.], > [ 0., 1.]]) > >>>> I*N.ones(2) >>>> > matrix([[ 1., 1.]]) > > If N.ones(2) were treated as a row vector, > matrix multiplication is not possible. > So the question is what should happen. > I would like an exception raised. > The current behavior is lmost certainly not desirable, > although it has the virute of matching ``dot``. > > I think that's why it is the current behavior --- by default rather than by design. But, dot has different use cases. I'd be fine with an error raised on matrix multiplication (as long as dot is not changed). In other words, I'd like to see 1-d arrays always interpreted the same way (as row vectors) when used in matrix multiplication.
Sounds good to me, it keeps things simple. The behavious 1-D -> row vector when promoted to a matrix should be documented as official behaviour. I filed ticket #473 on this yesterday. Chuck
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion