Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2006
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2006

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

Search the Archive

Re: Selecting Many Things Rather Than Selecting One Thing From Many

  • To: mathgroup at smc.vnet.net
  • Subject: [mg66214] Re: [mg66180] Selecting Many Things Rather Than Selecting One Thing From Many
  • From: János <janos.lobb at yale.edu>
  • Date: Thu, 4 May 2006 05:20:52 -0400 (EDT)
  • References: <200605030644.CAA12779@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

On May 3, 2006, at 2:44 AM, Gregory Lypny wrote:

> Hello everyone,
>
> I've discovered another use or need for the Select function, which I
> suspect requires mapping of some sort.
>
> In my previous posts, members of this MathGroup kindly showed me how
> to apply Select to many columns of a matrix at once.  For example,
>
> (Select[#1, #1 > K & ] & ) /@ Transpose[theMatrix]
>
> will pull out all values greater than K, where K is a number such as
> 100.
>
> But suppose now that K is a list of numbers, such as K={34, 876,
> 199}, and I simply want to extract or identify all of the rows in the
> first column of theMatrix equal to any one of those numbers.  How
> would I do that?  I started with
>
> Select[theMatrix, #[[1]]==any element of list K]
>
> and I imagine something similar could be applied to the Position
> function.
>
> Any hint would be much appreciated.
>
> 	Gregory

Here is a newbie approach:

In[1]:=
n = 8; m = 15;

In[2]:=
lst = Table[Table[Random[
      Integer, {1, 9}],
     {j, m}], {i, n}]
Out[2]=
{{8, 8, 9, 4, 7, 7, 6, 9, 1,
    1, 6, 3, 4, 9, 3},
   {2, 9, 8, 5, 4, 8, 4, 2, 8,
    3, 4, 4, 1, 4, 3},
   {8, 4, 2, 6, 7, 4, 5, 1, 8,
    7, 8, 2, 3, 6, 3},
   {4, 4, 5, 4, 2, 5, 9, 7, 2,
    4, 5, 4, 4, 7, 9},
   {6, 2, 8, 5, 9, 9, 6, 8, 2,
    6, 9, 9, 5, 6, 2},
   {7, 7, 7, 2, 8, 1, 6, 1, 7,
    9, 8, 8, 4, 8, 8},
   {7, 1, 4, 6, 8, 4, 4, 1, 5,
    7, 1, 8, 3, 3, 5},
   {6, 9, 6, 4, 7, 1, 2, 2, 9,
    7, 3, 4, 6, 2, 4}}

In[3]:=
kst = {2, 4, 6}
Out[3]=
{2, 4, 6}

In[4]:=
Select[lst, MemberQ[kst,
     #1[[1]]] & ]
Out[4]=
{{2, 9, 8, 5, 4, 8, 4, 2, 8,
    3, 4, 4, 1, 4, 3},
   {4, 4, 5, 4, 2, 5, 9, 7, 2,
    4, 5, 4, 4, 7, 9},
   {6, 2, 8, 5, 9, 9, 6, 8, 2,
    6, 9, 9, 5, 6, 2},
   {6, 9, 6, 4, 7, 1, 2, 2, 9,
    7, 3, 4, 6, 2, 4}}

János



----------------------------------------------
Trying to argue with a politician is like lifting up the head of a  
corpse.
(S. Lem: His Master Voice)


  • Prev by Date: Re: Beginner--Help on using FindRoot to solve the system of equations
  • Next by Date: Re: Faster Random Walk Simulation ?!?
  • Previous by thread: Selecting Many Things Rather Than Selecting One Thing From Many
  • Next by thread: Re: Selecting Many Things Rather Than Selecting One Thing From Many