This function is a wrapper around rlang::as_function()
which adds
a two extra features:
formulas can use .t
in place of .x
to be easier to understand
in time-based functions
functions can take additional named arguments.
as_function(x, env = parent.frame())
x | a function or formula, see |
---|---|
env | Environment in which to fetch the function in case |
Either:
the function as it is passed to as_function()
, whether as a
string or a name
the function derived from a formula, where the first argument
is passed as .
, .x
or .t
, the second argument is passed as
.y
and any other named arguments are passed as they are named
f1 <- as_function(mean) f1(1:10)#> [1] 5.5f2 <- as_function("sum") f2(1,2,3)#> [1] 6f3 <- as_function(~.x + 1) f3(9)#> [1] 10f4 <- as_function(~ .t + 1) f4(10)#> [1] 11f5 <- as_function(~.x + .y) f5(1,2)#> [1] 3f6 <- as_function(~ .t + alpha) f6(10, alpha = 2)#> [1] 12