Re: Request for help: working with multi-level lists
- To: mathgroup at smc.vnet.net
- Subject: [mg13673] Re: [mg13665] Request for help: working with multi-level lists
- From: "Carl K.Woll" <carlw at fermi.phys.washington.edu>
- Date: Sat, 15 Aug 1998 04:39:06 -0400
- Organization: Department of Physics
- References: <199808110856.EAA10664@smc.vnet.net.>
- Sender: owner-wri-mathgroup at wolfram.com
Hi, The way that I would do this is to use Cases, as in: realList = Cases[ li, {1, r_, _}->r ] to get a list of the numbers, where li is your list, and then to get the mean use mean = (Plus@@realList)/Length[realList] You could turn the above into a function, as in Mean[li_List] := (Plus@@li)/Length[li] Kmean[li_, i_Integer] := Mean[ Cases[li, {i, r_, _}->r] ] Carl Woll Dept of Physics U of Washington KCConnolly wrote: > I have a list of 10 elements, each of which is a list of three elements > (let's say in each case an integer, a real number, and a string). I am > looking for the most elegant way to select those first-level elements > (i.e., the lists) whose integer element is equal to a particular value > (let's say "1"), and then to obtain the mean of the real number > elements of the lists selected. This seems as if it should be simple, > but everything I try leads to Part specification errors. Any help > would be greatly appreciated.
- References:
- Request for help: working with multi-level lists
- From: kcconnolly@aol.com (KCConnolly)
- Request for help: working with multi-level lists