MathGroup Archive 2010

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

Search the Archive

Re: newbie list question

  • To: mathgroup at smc.vnet.net
  • Subject: [mg115018] Re: newbie list question
  • From: Michael Stern <nycstern at gmail.com>
  • Date: Tue, 28 Dec 2010 06:51:50 -0500 (EST)

There are a number of ways to do this. I would do

listA == {4, 5, 8, 2, 6, 4};
listB == {8, 4, 2};
Map[First[Position[listA, #]] &, listB]


or, if you want the output in a flat list, replace the last line with
Flatten[Map[First[Position[listA, #]] &, listB]]

Either way, you're using the Map[] command to run the Position[] command over each of the three elements in listB.


Cheers,

Michael




On Dec 26, 2010, at 4:02 AM, Gareth Edwards wrote:

> Hi,
>
> Liking Mathematica a lot, but struggling with the early part of the learning curve, i.e. don't know what I don't know...
>
> What would be the neatest syntax for finding the first location of elements from one list in another? For example:
>
> listA == { 4,5,8,2,6,4 }
> listB == { 8,4,2 }
>
>
> I would like a function to return {3,1,4} in this case (the first location in A of each element in B)
>
> Many thanks!
>


  • Prev by Date: Re: newbie list question
  • Next by Date: Re: newbie list question
  • Previous by thread: Re: newbie list question
  • Next by thread: Re: newbie list question