[Numpy-discussion] What's wrong with matrices?
josh8912 at yahoo.com
Sun Jul 9 03:10:27 CDT 2006
Ed Schofield <schofield <at> ftw.at> writes:
> On 08/07/2006, at 10:22 PM, JJ wrote:
> > 3) In some operations, especially range selection operations, a N,
> > 1 matrix is
> > turned into a 1,N matrix. This is confusing relative to matlab and
> > problematic,
> > in my view.
> This sounds like a bug. Can you give any examples of this happening
> with the latest release or SVN version?
> > <snip>
> > 5) If X is a 1,n matrix, then X.T should return a n,1 matrix, I
> > think.
> This should be the case. Could you post a code snippet that violates
> Thanks for your feedback, JJ!
Here are a couple of examples off the top of my head:
a = mat(arange(10))
a.shape = (5,2)
b = a.copy()
c = hstack((a,b)) # should return a matrix
a[where(a[:,0]<6),0] #should return a column
matrix([[0, 2, 4]])
My version is about a month old, so maybe these are fixed. Since we are on the
topic, I dont understand why where() returns a tupple. To me, it just means
adding an extra '' in many places in my code. I would vote for where()
retuning a matrix (if matrix is the default in the session). My comment on
transpose of a 1,n matrix producing a n,1 matrix was in response to a vote
question on the list. Also, I would vote for X.A*Y.A to return a matrix, if
matrix is the default for a session. Lastly, this might not be the right place
for this comment, but it would be nice if pylab allowed numpy matrices. Then
could be changed to plot(d)
Hope this is of some help.
More information about the Numpy-discussion