On Sat, 26 Apr 2008, Gael Varoquaux apparently wrote: > I claim b is more important than a. IMHO, a is plain > wrong: you should't be indexing x with x[0][0].
Why?? Would you say this about a 2d array? Why the difference? The core argument has been that it is a **basic expectation** of the behavior of 2d array-like objects that you will be able to get, e.g., the first element with x[0][0]. (E.g., lists, tuples, arrays ... is there an exception?? It should not be broken!) I teach with matrices and I thought you might too: if so, you surely have run into this expectation (which is **natural**). In fact I truly doubt anyone has not been puzzled on first encounter by this:: >>> x matrix([[1, 2], [3, 4]]) >>> x[0] matrix([[1, 2]]) >>> x[0][0] matrix([[1, 2]]) Another argument, which I agree with, has been that matrix behavior should match 2d array behavior except where there is a clear payoff from deviation. What I do agree with, which I take to be implicit in your statement, is that if users of matrices should generally use multiple indexes. But that does not answer the question about what we should offer when x[0] is requested. (Or, more crucially, what you get when you iterate over a matrix.) Cheers, Alan Isaac PS If you have good arguments, please add them to <URL:http://www.scipy.org/MatrixIndexing> _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion