MathGroup Archive 2008

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: easier method for Flatten[Position[list2,x_x...??

  • To: mathgroup at smc.vnet.net
  • Subject: [mg94030] Re: [mg93990] easier method for Flatten[Position[list2,x_x...??
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Tue, 2 Dec 2008 00:43:41 -0500 (EST)
  • References: <200812011200.HAA05857@smc.vnet.net>

On 1 Dec 2008, at 21:00, Van Der Burgt, Maarten wrote:

> Dear all,
>
> Below I have two lists.
>
> The elements x in list1 all appear again in the 2nd level of list2
> together with an associated parameter xP.
>
> I want to extract the xP as illustrated below.
>
> I have the feeling it can be done in an easier way.
>
>
>
> Does anyone have an idea how?
>
>
>
> Thanks for your help,
>
>
>
> Maarten
>
>
>
>
>
> list1={a,b,b,e};
>
>
>
> list2={{a,aP},{b,bP},{c,cP},{d,dP},{e,eP},{f,fP}};
>
>
>
>
>
> pos = Flatten[Position[list2,x_List/;x[[1]]==#]&/@list1];
>
>
>
> list2[[pos,2]]
>
>
>
> Out-> {aP,bP,bP,eP}
>
>

I don't know about easier but it is certainly different:

  list1 /. Thread[DeleteDuplicates[list1] -> Extract[list2,  
Position[list2, Alternatives @@ list1] /. {i_, 1} -> {i, 2}]]

{aP, bP, bP, eP}


Note that this actually needs Mathematica 7 to work.

Andrzej Kozlowski




  • Prev by Date: Re: easier method for Flatten[Position[list2,x_x...??
  • Next by Date: Re: Vertex Colors
  • Previous by thread: easier method for Flatten[Position[list2,x_x...??
  • Next by thread: Re: easier method for Flatten[Position[list2,x_x...??