Re: sorting?
- To: mathgroup at smc.vnet.net
- Subject: [mg129603] Re: sorting?
- From: Francisco Gutierrez <fgutiers2002 at yahoo.com>
- Date: Mon, 28 Jan 2013 02:26:02 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <kdvtkk$fp2$1@smc.vnet.net> <20130126215946.6AA08687E@smc.vnet.net>
- Reply-to: Francisco Gutierrez <fgutiers2002 at yahoo.com>
Works perfect Albert, thanks! Francisco From: awnl <awnl at gmx-topmail.de> To: mathgroup at smc.vnet.net Sent: Saturday, January 26, 2013 4:59 PM Subject: [mg129603] Re: sorting? Hi, > I have a large list of simple numerical lists, and I want to sort it > using two criteria. in the simplest case, suppose the sublists are of > length two, and that my first criterion is the quotient of part one > by part two, and my second criterion is the size of part two (no > zeros in part 2. I want to sort using the first criterion, and then > break the ties using the second one. So for example if I had > lalista={{0,5},{8,8},{2,2},{3,5},{1,3},{3,9}}, the sorting should > return > {{8,8},{2,2},{3,5},{3,9},{1,3},{0,5}} > Of course this can be done, but I wonder if it is a way to make this > only with native Mathematica tools (wich is always far more > efficient). I think you are looking for SortBy, which can be given a list of pure functions to define the sorting, e.g. like this (the minus signs reverse the sorting so I get what you want, it might need adoption depending on what you really want...): SortBy[lalista, {-#[[1]]/#[[2]] &, -#[[2]] &}] hth, albert
- References:
- Re: sorting?
- From: awnl <awnl@gmx-topmail.de>
- Re: sorting?