Re: A list based table join?
- To: mathgroup at smc.vnet.net
- Subject: [mg112966] Re: A list based table join?
- From: Peter Breitfeld <phbrf at t-online.de>
- Date: Fri, 8 Oct 2010 04:49:31 -0400 (EDT)
- References: <i8jteq$aco$1@smc.vnet.net>
Leo Ditolaghi wrote: > Hi all, > > (noob Mathematica question:) > > If I have two lists, how do I determine the indices at which the 1st list > elements are matched by the elements of the second, and then use these > matching indices to extract corresponding columns in the 1st list (sort of a > simulated database join)? I.e., > > x = {{"hello", 27}, > {"bye", 30}, > {"hello", 54}, > {"seeya", 100}, > {"hi", 9}} > > y = {"hello", "hi"} > > where x is the source table, and y is the select criteria (so to speak.) > > I wish to produce z, where y defines which elements of x to extract: > > z = {27,54,9} > > I know this should be easy and elegant, but I am going in circles > with list functions. > > Thanks in advance, > > Leo > > One possibility might be Last /@ Select[x, MemberQ[y, First[#]]&] -- _________________________________________________________________ Peter Breitfeld, Bad Saulgau, Germany -- http://www.pBreitfeld.de