Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2008

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

Search the Archive

Re: Select from list

  • To: mathgroup at smc.vnet.net
  • Subject: [mg87778] Re: Select from list
  • From: dh <dh at metrohm.ch>
  • Date: Wed, 16 Apr 2008 22:32:19 -0400 (EDT)
  • References: <fu4fjb$nhp$1@smc.vnet.net>


Hi Steve,

simply use Position:

Position[ptX,{___,2,___,3,___}|{___,3,___,2,___}]

hope this helps, Daniel





Steve Gray wrote:

> I have a list like this:

> 

> ptX=

> {{1, 2, 3, 4}, {1, 2, 3, 5}, {1, 2, 4, 5}, {1, 3, 4, 5}, {2, 3, 4, 5}}

> 

> and I want a list pointing to all the sublists above that contain both

> a 2 and a 3. In this example I would get {1,2,5}. The best solution I

> have, with more generality, is:

> 

> va = 2;

> vb = 3;

> za = Map[Cases[#1, va]&, ptX] /. {} -> {0}

> zb = Map[Cases[#1, vb]&, ptX] /. {} -> {0}

> Flatten[Position[za*zb, {va*vb}]]

> 

> which gives

> 

> {{2}, {2}, {2}, {0}, {2}}

> {{3}, {3}, {0}, {3}, {3}}

> {1, 2, 5}. 

> 

> (This doesn't work if va or vb is zero. That's ok.)

> There's probably a better way. Anyone? Thank you.

> 

> Steve Gray

> 




  • Prev by Date: Re: Help with minimization of Eigenvalues
  • Next by Date: Re: List re-arrangement question
  • Previous by thread: Re: Select from list
  • Next by thread: Re: Select from list