Re: Sort a List, in a List of Lists of Lists
- To: mathgroup at smc.vnet.net
- Subject: [mg113833] Re: Sort a List, in a List of Lists of Lists
- From: Mauricio Esteban Cuak <cuak2000 at gmail.com>
- Date: Sun, 14 Nov 2010 06:51:11 -0500 (EST)
Depending on the different structure of list you might face, this might
prove to be too ad-hoc, but you can have it while waiting for the good
answers
listthing = {{{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}}};
Dimensions[%]
{6, 3, 2}
Map[Sort[#] &, listthing, Dimensions[listthing][[3]]]
This should work for other types of lists:
Map[Sort[#] &, listthing, Min[Dimensions[listthing]] ]
It is by no means a general solution of course.
Best,
me
2010/11/13 <leigh.pascoe at inserm.fr>
> 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
>