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

Reply via email to