MathGroup Archive 2004

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

Search the Archive

RE: Building List


Bruce:

            Create a function to do what you wish, e.g. -

fix[lst_]:=If[Length[lst]>2,Table[{lst[[1]],lst[[i]]},{i,2,Length[lst]}],lst]

Then map it to your list -

fix /@ { {1,2},{3,4,5,6},{7,8} }

            It's better practice not to use capital letters, or initial
caps, in defining your own variables or functions.  That's because
Mathematica, by default, uses capital letters and initial caps in
defining its own variables and functions.

            Best,

            Harvey

Harvey P. Dale

University Professor of Philanthropy and the Law

Director, National Center on Philanthropy and the Law

New York University School of Law

New York, N.Y. 10012-1074



-----Original Message-----
From: Bruce W. Colletti [mailto:bcolletti at compuserve.com]
To: mathgroup at smc.vnet.net
Subject: [mg48036] [mg48015] Building List



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: Re: kuen surface
  • Previous by thread: Re: Building List
  • Next by thread: RE: Building List