fcompose {functionals} | R Documentation |
Compose multiple functions
Description
Create a new function by composing several functions, applied from right to left. Equivalent to 'f1(f2(f3(...)))'.
Usage
fcompose(...)
Arguments
... |
Functions to compose. Each must take a single argument and return an object compatible with the next function in the chain. |
Value
A new function equivalent to nested application of the input functions.
Examples
square <- function(x) x^2
add1 <- function(x) x + 1
f <- fcompose(sqrt, square, add1) # => sqrt(square(x + 1))
f(4) # => sqrt((4 + 1)^2) = sqrt(25) = 5
# More compact
fcompose(log, exp)(2) # log(exp(2)) = 2
[Package functionals version 0.5.0 Index]