Re: Sort a List, in a List of Lists of Lists
- To: mathgroup at smc.vnet.net
- Subject: [mg113800] Re: Sort a List, in a List of Lists of Lists
- From: Raffy <adraffy at gmail.com>
- Date: Sun, 14 Nov 2010 06:06:02 -0500 (EST)
- References: <ibl9g2$b8a$1@smc.vnet.net>
On Nov 12, 9:59 pm, leigh.pas... at inserm.fr wrote: > Dear Mathgroup, > > I have a lsit of Lists of Lists: > > {{{1,2},{2,1},{1,1}},{{1,1},{1,1},{1,2}},{{2,1},{2,2},{1,2}},{{2,2},{1,2},{ 2,2}},{{1,1},{2,1},{1,2}},{{1,2},{2,2},{2,2}}} > > I would like to sort the elements in the lowest level of brackets to give > > {{{1, 2}, {1, 2}, {1, 1}}, {{1, 1}, {1, 1}, {1, 2}}, {{1, 2}, {2, > 2}, {1, 2}}, {{2, 2}, {1, 2}, {2, 2}}, {{1, 1}, {1, 2}, {1, > 2}}, {{1, 2}, {2, 2}, {2, 2}}} > > i.e retaining the same structure with the paired elements in the > original order. I can't seem to get the syntax right to do this apart > from the obvious > > {{Sort[{1, 2}], Sort[{2, 1}], Sort[{1, 1}]}, {Sort[{1, 1}], > Sort[{1, 1}], Sort[{1, 2}]}, {Sort[{2, 1}], Sort[{2, 2}], > Sort[{1, 2}]}, {Sort[{2, 2}], Sort[{1, 2}], > Sort[{2, 2}]}, {Sort[{1, 1}], Sort[{2, 1}], > Sort[{1, 2}]}, {Sort[{1, 2}], Sort[{2, 2}], Sort[{2, 2}]}} > > I must have a blind spot for the correct command. Can someone please > help me with what should be a straightforward sort. As I want to carry > this out on several hundred thousand pairs I need a more efficient > command. Thanks in advance. > > LP > > ---------------------------------------------------------------- > This message was sent using IMP, the Internet Messaging Program. lists = {{{1, 2}, {2, 1}, {1, 1}}, {{1, 1}, {1, 1}, {1, 2}}, {{2, 1}, {2, 2}, {1, 2}}, {{2, 2}, {1, 2}, {2, 2}}, {{1, 1}, {2, 1}, {1, 2}}, {{1, 2}, {2, 2}, {2, 2}}}; If the depth is variable: lists /. x_?VectorQ :> Sort[x] If the depth is constant: Map[Sort, lists, {2}]