Memoizing wrapper for vapply.
vapplym(X, FUN, FUN.VALUE, ..., USE.NAMES = TRUE)
Arguments
- X
list or vector of inputs
- FUN
function to apply
- FUN.VALUE
type of vector to return
- ...
additional arguments passed to lapply
- USE.NAMES
passed to vapply
Examples
fs <- function(x) { x <- x[[1]]; print(paste("see", x)); sin(x) }
# should only print "see" twice, not 6 times
vapplym(c(0, 1, 1, 0, 0, 1), fs, numeric(1))
#> [1] "see 0"
#> [1] "see 1"
#> [1] 0.000000 0.841471 0.841471 0.000000 0.000000 0.841471