Re: Re: Using Select with arrays? (Relative newbie)
- To: mathgroup at smc.vnet.net
- Subject: [mg54292] Re: [mg54258] Re: Using Select with arrays? (Relative newbie)
- From: DrBob <drbob at bigfoot.com>
- Date: Wed, 16 Feb 2005 14:36:12 -0500 (EST)
- References: <200502140317.WAA14058@smc.vnet.net> <200502150250.VAA27328@smc.vnet.net>
- Reply-to: drbob at bigfoot.com
- Sender: owner-wri-mathgroup at wolfram.com
data = {{1, 1, string1, c, d}, {1, 2, string2, c, d}, {1, 3, string3, c, d}, {1, 4, string4, c, d}, {2, 1, string1, c, d}, {2, 2, string2, c, d}, {3, 1, string3, c, d}, {4, 1, string2, c, d}, {4, 2, string4, c, d}}; Cases[data, {1, Max[data[[All,2]]], _, _, _}] {{1, 4, string4, c, d}} Bobby On Mon, 14 Feb 2005 21:50:53 -0500 (EST), János <janos.lobb at yale.edu> wrote: > Well, I did not read to the end at first. > If you want to use Select to select the element which has maximum in > its #2 location from all those who have 1 in their #1 location, then > you can do something like: > > In[23]:= > Select[Select[data, > #1[[1]] == 1 & ], > #1[[2]] == Max[ > Select[data, > #1[[1]] == 1 & ][[All, > 2]]] & ] > Out[23]= > {{1, 4, string4, c, d}} > > János > > On Feb 13, 2005, at 10:17 PM, Hugo Mallinson wrote: > >> The subject might not be entirely correct, but here is my problem: >> I have a list of 5-variable data points like >> data = { >> {1, 1, string1, c, d} >> {1, 2, string2, c, d} >> {1, 3, string3, c, d} >> {1, 4, string4, c, d} >> {2, 1, string1, c, d} >> {2, 2, string2, c, d} >> {3, 1, string3, c, d} >> {4, 1, string2, c, d} >> {4, 2, string4, c, d} >> } >> and I want to extract just the points that have 1 (or 2, etc) as their >> first value. I think I should do something like >> Select[data, {1, _Integer, _String, _Integer, _Integer}] >> but that doesn't work. >> Having done that I need to find the maximum value of #2 for each >> string, which I presumably do by the same method as above to extract >> all string1 (or ...2) and then use Map[] and Max[]. I would do this all >> with For loops (revealing my lack of Mathematica chops :-) ) but I'd >> really like to learn how to do this sort of extraction in a >> Mathematica-y way. Any help would be greatly appreciated! >> Hugo > > ---------------------------------------------- > Trying to argue with a politician is like lifting up the head of a > corpse. > (S. Lem: His Master Voice) > > > > -- DrBob at bigfoot.com www.eclecticdreams.net
- References:
- Using Select with arrays? (Relative newbie)
- From: Hugo Mallinson <hfm21@cam.ac.uk>
- Re: Using Select with arrays? (Relative newbie)
- From: János <janos.lobb@yale.edu>
- Using Select with arrays? (Relative newbie)