Re: Can anybody help?
- To: mathgroup at smc.vnet.net
- Subject: [mg63526] Re: [mg63519] Can anybody help?
- From: gardyloo <gardyloo at mail.wsu.edu>
- Date: Tue, 3 Jan 2006 05:24:42 -0500 (EST)
- References: <200601030626.BAA26066@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Hi, Kent, If I understand your question correctly, I think this will do it (not sure about efficiency for very large lists, however): v2[[Flatten[(Position[v1, #1] & ) /@ v3]]] Note that the answer returned by this is actually {12, 32, 63} which differs from your proposed answer in the first element. Hope that helps, Curtis O. Kent Holing wrote: >I have three vecors containg: v1, v2 and v3. >v1 and v2 has the same length. v3 is shorter than v1. >All elements of v3 is an element of v1. >Need to have the corresponding v2 values corresponding to the v3 (= v1) value. >Know that the elements of v1 and v3 are different. The elements of v2 do not need to different. >Ex: >v1={1,2,3,4,5,6,7,8,9} >v2={10,11,12,22,32,42,53,63,73} >v3={3,5,8} >The corresponding v2 values are {11,32,63} >It easy to write straightforward code to do this. >But is it really a very elegant/short way (one-liner?) of doing this in Mathematica? >Kent Holing > > > >
- References:
- Can anybody help?
- From: Kent Holing <KHO@statoil.com>
- Can anybody help?