Re: Sorting on multiple columns within a matrix

• To: mathgroup at smc.vnet.net
• Subject: [mg57838] Re: Sorting on multiple columns within a matrix
• From: dh <dh at metrohm.ch>
• Date: Thu, 9 Jun 2005 06:12:02 -0400 (EDT)
• References: <d892lm\$sc6\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Hello Lee,
You need "Ordered" like in this example:

Sort[m, If[#1[[2]] === #2[[2]], OrderedQ[{#1[[1]], #2[[1]]}],
OrderedQ[{#1[[2]], #2[[2]]}]] &]

sincerely, Daniel

Lee Newman wrote:
> Hello,
>
> I can't come up with a solution to the following simple task:
>
> -  I have a matrix, let's M={ {"Z",2,"a"},{"A",2,"k"}, {"Z",1,"z"},
> {"A",1,"a"},{"Z",3,"k"}, {"A",3,"z"} }
> -  I want to be able to sort the matrix row-wise, based on multiple
> columns, for example sort first on column 2 (ascending) and then
> secondly on column1 (ascending)
>
> desired result:
> A 1 a
> Z 1 z
> A 2 k
> Z 2 a
> A 3 z
> Z 3 k
>
> I suspect the solution involves using a pure function of some form as
> the second argument in the Sort function, but I can't figure out what
> this function should be.
>
> Thanks,
> Lee
>

```

• Prev by Date: Re: Remove definitions from I
• Next by Date: Re: Simplify expression
• Previous by thread: Re: Sorting on multiple columns within a matrix
• Next by thread: Re: Sorting on multiple columns within a matrix