MathGroup Archive 2004

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

Search the Archive

Re: Building List

  • To: mathgroup at smc.vnet.net
  • Subject: [mg48032] Re: Building List
  • From: Mark Fisher <mark at markfisher.net>
  • Date: Sat, 8 May 2004 01:23:36 -0400 (EDT)
  • References: <c7fhhg$o9u$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

How's this?

modifylist[list_List] :=
   Block[{g},
   (g @@ list) /. {a_, b__ /; Length[{b}] > 1} :>
       Sequence @@ Thread[{a, {b}}] /. g -> List
   ]

--Mark

Bruce W. Colletti wrote:

> Re Mathematica 5.0.1.0.
> 
> I have a list of lists -- e.g., L = { {1,2},{3,4,5,6},{7,8} } -- and 
> want to replace element-lists (whose length exceeds 2) with another list 
> built from that element.  All else is untouched.
> 
> For instance, using L above, replace {3,4,5,6} with {3,4}, {3,5}, {3,6}. 
>  This transforms L to the desired form { {1,2}, {3,4}, {3,5}, {3,6}, 
> {7,8} }.
> 
> Although I can do this using Sow and Reap, am hoping there's an easier 
> way using rules (/.).  In general, I want to replace those L-elements x 
> (that meet a criterion) with foo[x]. 
> 
> Thanks.
> 
> Bruce
> 


  • Prev by Date: Re: Simple question
  • Next by Date: Interpretation of subscripts
  • Previous by thread: Building List
  • Next by thread: Re: Building List