Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2008

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

Search the Archive

Re: Filtering a list of list for certain elements that

  • To: mathgroup at smc.vnet.net
  • Subject: [mg88842] Re: [mg88834] Filtering a list of list for certain elements that
  • From: Carl Woll <carlw at wolfram.com>
  • Date: Mon, 19 May 2008 05:15:23 -0400 (EDT)
  • References: <200805181134.HAA23914@smc.vnet.net>

Steven Siew wrote:

>I have a list of lists
>
>mylist={{a,b,c},{a,c,b},{b,a,c},{b,c,a},{c,a,b},{c,b,a}}
>
>I want to filter out all lists that have "a being a neighbor to b".
>
>I am looking for the following result.
>
>{{a,c,b},{b,c,a}}
>
>
>For this toy example, I can probably do it by hand but my real problem
>has 120 lists in a list. And I need to filter out various combination
>of letters like "s cannot be next to d" , "s cannot be next to j" , "c
>cannot be next to j" , "h cannot be next to d" and "h cannot be next
>to s".
>  
>
One possibility:

In[267]:= DeleteCases[mylist, {___, PatternSequence[a, b] | 
PatternSequence[b, a], ___}]

Out[267]= {{a, c, b}, {b, c, a}}

Carl Woll
Wolfram Research


  • Prev by Date: Re: Possible Bug Report: CoefficientList
  • Next by Date: Implementing a array assignment for custom data structure
  • Previous by thread: Re: Filtering a list of list for certain elements that are neighbours
  • Next by thread: Re: Filtering a list of list for certain elements that are neighbours