[R] Nesting Functions

Duncan Murdoch murdoch at stats.uwo.ca
Fri Jan 27 03:55:05 CET 2006


On 1/26/2006 9:45 PM, Manuel Morales wrote:
> Dear list members,
> 
> I'm looking for a way to write "nested" functions similar to the
> function "Nest" or "NestList" in Mathematica.
> 
> E.g.,
> 
> f<-function(x) x+2*x
> 
> f(f(f(2)))
> 
> might instead be written as nest(f, 2, 3)
> 
> read as, nest function f 3 times with 2 as the initial value.

It's easy enough using a for loop:

nest <- function(f, initial, reps) {
    result <- initial
    for (i in seq(len=reps)) result <- f(result)
    result
}

Duncan Murdoch




More information about the R-help mailing list