[Numpy-discussion] Detect subclass of ndarray
Charles R Harris
charlesr.harris at gmail.com
Sat Mar 24 16:05:59 EDT 2007
On 3/24/07, Travis Oliphant <oliphant at ee.byu.edu> wrote:
>
> Alan G Isaac wrote:
> > On Sat, 24 Mar 2007, Charles R Harris apparently wrote:
> >
> >> Yes, that is what I am thinking. Given that there are only the two
> >> possibilities, row or column, choose the only one that is compatible
> with
> >> the multiplying matrix. The result will not always be a column vector,
> for
> >> instance, mat([[1]])*ones(3) will be a 1x3 row vector.
> >>
> >
> >
> >
> > Ack! The simple rule `post multiply means its a column vector`
> > would be horrible enough: A*ones(n)*B becomes utterly obscure.
> > Now even that simple rule is to be violated??
> >
> > Down this path lies madness.
> > Please, just raise an exception.
> >
>
> 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.
Fair enough. But in that case mat(eye(2))*ones(2) should raise an error
instead of returning a row vector.
In [1]: mat(eye(2))*ones(2)
Out[1]: matrix([[ 1., 1.]])
The problem is that the return object is created as a row matrix and then
filled as if the rhs was a column vector in PyArray_MatrixProduct. So this
should be made a bug?
Chuck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20070324/66357845/attachment.html>
More information about the NumPy-Discussion
mailing list