Re: Intersection problem
- To: mathgroup at smc.vnet.net
- Subject: [mg125993] Re: Intersection problem
- From: Bob Hanlon <hanlonr357 at gmail.com>
- Date: Wed, 11 Apr 2012 18:21:52 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201204100627.CAA10654@smc.vnet.net>
list1 = {{a, x}, {b, y}, {c, z}};
list2 = {b, c, d};
Select[list1, MemberQ[list2, #[[1]]] &]
{{b, y}, {c, z}}
Cases[list1, _?(MemberQ[list2, #[[1]]] &)]
{{b, y}, {c, z}}
Cases[list1, {x_, _} /; MemberQ[list2, x]]
{{b, y}, {c, z}}
DeleteCases[list1, _?(FreeQ[list2, #[[1]]] &)]
{{b, y}, {c, z}}
DeleteCases[list1, {x_, _} /; FreeQ[list2, x]]
{{b, y}, {c, z}}
Pick[list1, MemberQ[list2, #[[1]]] & /@ list1]
{{b, y}, {c, z}}
Bob Hanlon
On Tue, Apr 10, 2012 at 2:27 AM, Cisco Lane <travlorf at yahoo.com> wrote:
> I need to select out the elements of the first list whose first elements are contained in the second list. For example
>
> first list: {{a,x},{b,y},{c,z}}
>
> second list: {b,c,d}
>
> result: {{b,y},{c,z}}
>
> Is there a quick way to do this? Intersection, maybe somehow?
- References:
- Intersection problem
- From: Cisco Lane <travlorf@yahoo.com>
- Intersection problem