我能够实现一种方法来将参数组合迭代到单个函数:
a <- seq(1, 5, 1)
b <- rep(10, 15, 1)
foo <- function(a, b){ a + b}
foo2 <- function(a, b) {a * b}
result <- invoke_map_dbl(foo, cross2(a, b))
但是,我无法通过两个函数迭代这些参数。我想这样做:
result <- invoke_map_dbl(list(foo, foo2), cross2(a,b))
可能吗?
问题可能是试图强制列表输出到dbl
。你不需要......
invoke_map(list(foo,foo2), a=a, b=b)
[[1]]
[1] 11 12 13 14 15
[[2]]
[1] 10 20 30 40 50
你可以unlist
得到一个矢量,如果这是你想要的。
再看一遍,我注意到你只是定义了b=10
,看起来不对。所以这可能不符合您的要求,但您需要更具体地回答您的问题。