Re: Filtering same elements from two lists
- To: mathgroup at smc.vnet.net
- Subject: [mg67958] Re: [mg67935] Filtering same elements from two lists
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Tue, 18 Jul 2006 05:50:53 -0400 (EDT)
- Reply-to: hanlonr at cox.net
- Sender: owner-wri-mathgroup at wolfram.com
Not clear how you want all cases handled, but here is one method: list1={{PLUS1,55,43},{PLUS2,555,83},{PLUS1,2,7}}; list2={{PLUS3,9,107},{PLUS1,77,99},{PLUS2,52,103}}; Join@@@Split[Sort[Join[list1,list2]], #1[[1]]==#2[[1]]&]//.{x_,y__,x_,z__}:>{x,y,z} {{PLUS1,2,7,55,43,77,99},{PLUS2,52,103,555,83},{PLUS3,9,107}} Bob Hanlon ---- LectorZ <lectorz at mail.ru> wrote: > Dear experts, > > I do have to not ordered lists of the following type (same shape and > length): > > list1={{PLUS1, 55, 43}, {PLUS2, 555, 83}, {....},...} > > list2={{..., ...,...}, {..., ...,...},{..., ...,...},{..., > ...,...},{PLUS1,77, 99}, {..., ...,...},{PLUS2, 52,103}, {....}} > > I have to filter the same records according to the 1st element of each > sublist and make a new list with the joint numbers from both lists. > > The result in this case should be: > > resultlist={{PLUS1, 55, 43, 77, 99}, {PLUS2, 555, 83, 52,103}, {....}} > > Thanks, > > LZ >