Sorting array


T

Tartifola

Hi,
I'm working with numerical array and I'm a little lost on a particular
sorting of one of them. In particular I have an array like

a = array([[8,4,1],[2,0,9]])

and I need to sort it using only the first column as reference but
keeping the lines together so to obtain

array([[2, 0, 9],
[8, 4, 1]])

Any help?
Thanks
 
Ad

Advertisements

C

Chris Hulan

the list.sort method seems to do exactly what you want?

Unless your array() method is creating a custom array object with
different sort functionality than list?

Cheers
 
R

Robert Kern

Chris said:
the list.sort method seems to do exactly what you want?

Unless your array() method is creating a custom array object with
different sort functionality than list?

Presumably he is using numpy arrays.

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
 
R

Robert Kern

Tartifola said:
Hi,
I'm working with numerical array and I'm a little lost on a particular
sorting of one of them. In particular I have an array like

a = array([[8,4,1],[2,0,9]])

and I need to sort it using only the first column as reference but
keeping the lines together so to obtain

array([[2, 0, 9],
[8, 4, 1]])

In [1]: from numpy import *

In [2]: a = array([[8,4,1],[2,0,9]])

In [3]: i = argsort(a[:,0])

In [4]: a
Out[4]:
array([[2, 0, 9],
[8, 4, 1]])


numpy questions are best asked on the numpy-discussion mailing list since
everyone there automatically knows that you are talking about numpy arrays and
not just misnaming lists. ;-)

http://www.scipy.org/Mailing_Lists

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
 
T

Tartifola

Hi,

Tartifola said:
Hi,
I'm working with numerical array and I'm a little lost on a particular
sorting of one of them. In particular I have an array like

a = array([[8,4,1],[2,0,9]])

and I need to sort it using only the first column as reference but
keeping the lines together so to obtain

array([[2, 0, 9],
[8, 4, 1]])

In [1]: from numpy import *

In [2]: a = array([[8,4,1],[2,0,9]])

In [3]: i = argsort(a[:,0])

In [4]: a
Out[4]:
array([[2, 0, 9],
[8, 4, 1]])


numpy questions are best asked on the numpy-discussion mailing list since
everyone there automatically knows that you are talking about numpy arrays and
not just misnaming lists. ;-)

http://www.scipy.org/Mailing_Lists


thanks a lot for your help and sorry for using the wrong list.
 
Ad

Advertisements

R

Robert Kern

Tartifola said:
Hi,

On Fri, 30 Nov 2007 14:55:08 -0600


thanks a lot for your help and sorry for using the wrong list.

No need to apologize. This isn't the wrong list; it's just that there is a
better list. :)

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
 
Ad

Advertisements


Top