Skip to content

[Deprecated]

funs() is deprecated; please use list() instead. We deprecated this function because it provided a unique way of specifying anonymous functions, rather than adopting the conventions used by purrr and other packages in the tidyverse.

Usage

funs(..., .args = list())

Arguments

...

<data-masking> A list of functions specified by:

  • Their name, "mean"

  • The function itself, mean

  • A call to the function with . as a dummy argument, mean(., na.rm = TRUE)

The following notations are not supported, see examples:

  • An anonymous function, function(x) mean(x, na.rm = TRUE)

  • An anonymous function in purrr notation, ~mean(., na.rm = TRUE)

.args, args

A named list of additional arguments to be added to all function calls. As funs() is being deprecated, use other methods to supply arguments: ... argument in scoped verbs or make own functions with purrr::partial().

Examples

funs("mean", mean(., na.rm = TRUE))
#> Warning: `funs()` was deprecated in dplyr 0.8.0.
#>  Please use a list of either functions or lambdas:
#> 
#> # Simple named list: list(mean = mean, median = median)
#> 
#> # Auto named with `tibble::lst()`: tibble::lst(mean, median)
#> 
#> # Using lambdas list(~ mean(., trim = .2), ~ median(., na.rm = TRUE))
#> <fun_calls>
#> $ mean: mean(.)
#> $ mean: mean(., na.rm = TRUE)
# ->
list(mean = mean, mean = ~ mean(.x, na.rm = TRUE))
#> $mean
#> function (x, ...) 
#> UseMethod("mean")
#> <bytecode: 0x55a4081992e8>
#> <environment: namespace:base>
#> 
#> $mean
#> ~mean(.x, na.rm = TRUE)
#> <environment: 0x55a415d935b8>
#> 

funs(m1 = mean, m2 = "mean", m3 = mean(., na.rm = TRUE))
#> Warning: `funs()` was deprecated in dplyr 0.8.0.
#>  Please use a list of either functions or lambdas:
#> 
#> # Simple named list: list(mean = mean, median = median)
#> 
#> # Auto named with `tibble::lst()`: tibble::lst(mean, median)
#> 
#> # Using lambdas list(~ mean(., trim = .2), ~ median(., na.rm = TRUE))
#> <fun_calls>
#> $ m1: mean(.)
#> $ m2: mean(.)
#> $ m3: mean(., na.rm = TRUE)
# ->
list(m1 = mean, m2 = "mean", m3 = ~ mean(.x, na.rm = TRUE))
#> $m1
#> function (x, ...) 
#> UseMethod("mean")
#> <bytecode: 0x55a4081992e8>
#> <environment: namespace:base>
#> 
#> $m2
#> [1] "mean"
#> 
#> $m3
#> ~mean(.x, na.rm = TRUE)
#> <environment: 0x55a415d935b8>
#>