Re: logical indexing using more than one variable in a pure function
- To: mathgroup at smc.vnet.net
- Subject: [mg53352] Re: logical indexing using more than one variable in a pure function
- From: "Astanoff" <astanoff at yahoo.fr>
- Date: Sat, 8 Jan 2005 02:39:19 -0500 (EST)
- References: <crkue3$akd$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
This is one possible solution :
In[1]:=
myPick[y1_List,y2_List,cond_[y1_List,y2_List]]:=
Select[Transpose[{y1,y2}],cond[#[[1]],#[[2]]]&][[All,1]];
myPick[y1_List,y2_List,cond_[y2_List,y1_List]]:=
Select[Transpose[{y1,y2}],cond[#[[2]],#[[1]]]&][[All,1]];
In[3]:=
x1={2,3,4,5,6};
x2={6,5,4,3,2};
In[5]:=
myPick[x1,x2,x1>x2]
Out[5]=
{5,6}
In[6]:=
myPick[x1,x2,x2<=x1]
Out[6]=
{4,5,6}
hth
Valeri