“R for Data Science”中的这个例子使用了invoke_map现在已停用。
sim <- tribble(
~f, ~params,
"runif", list(min = -1, max = 1),
"rnorm", list(sd = 5),
"rpois", list(lambda = 10)
)
sim %>%
mutate(sim = invoke_map(f, params, n = 10))
Run Code Online (Sandbox Code Playgroud)
如果我分别提取列,那么它适用于map2和exec
map2(sim$f, sim$params, function(fn, args) exec(fn, !!!args, n = 10))
Run Code Online (Sandbox Code Playgroud)
但是,我不能让mutate工作与map2和exec
sim %>%
mutate(sim = map2(f, params, function(fn, args) exec(fn, !!!args, n = 10)))
Run Code Online (Sandbox Code Playgroud)
我收到错误“错误:无法拼接类型闭包的对象,因为它不是向量”
有人能帮忙吗?