MathGroup Archive 2009

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

Search the Archive

Re: Map and functional constructs to replace iterative statements

  • To: mathgroup at smc.vnet.net
  • Subject: [mg96838] Re: Map and functional constructs to replace iterative statements
  • From: Peter Breitfeld <phbrf at t-online.de>
  • Date: Thu, 26 Feb 2009 07:52:28 -0500 (EST)
  • References: <go31ba$f47$1@smc.vnet.net>

Andreas wrote:

> I have begun to replace Table, Do, While, or For, but in my thinking
> with Map, Inner, Outer and other functional programming constructs as
> I learn more about Mathematica.
>
> But, I'm stuck. I need to figure out how to use Map (or some related
> approach) when a function needs both a current value and a previous
> value in a time series, such as a percentage change function (or
> perhaps more generally stated, when I need to refer to previous values
> in a series or even previous calculations). But first a simple case:
>
> percentChange[currentValue_, previousValue_] := 100 * ( currentValue -
> previousValue) / previousValue
>
> I know how to apply this iteratively, but how can I do it with Map or
> some other functional construct?
>
> Say I have a list: timeSeries
>
> I thought to try something like this:
>
> Map[percentChange[?,?], timeSeries]
>
> but I don't know how what to put in for "?".
>
> Any help much appreciated.
>
> Thx.
>

Maybe this is what you want:

pc=RandomInteger[{1,9},10];

{100(#2-#1)/#1}& @@@ Partition[pc,2,1]

-- 
_________________________________________________________________
Peter Breitfeld, Bad Saulgau, Germany -- http://www.pBreitfeld.de


  • Prev by Date: Re: Counting Categories
  • Next by Date: Re: Counting Categories
  • Previous by thread: Re: Map and functional constructs to replace iterative statements
  • Next by thread: Re: Map and functional constructs to replace iterative statements