假设我定义了
methods <- list(hurz.default = function (vehicles, mission) {
vehicles_r <- vehicles
return(vehicles_r)},
hurz.a = function (vehicles, mission) {
vehicles_r <- vehicles[1, ]
return(vehicles_r)})
现在,这正在工作
i <- 1
assign(names(methods[i]), methods[[i]])
但是这不是:
lapply(c(1:length(methods)), function(i) {
assign(names(methods[i]), methods[[i]])
})
我无法使用Hadley找到答案。有什么想法吗?
(这个想法来自her,但我想这是别的。)
我们可以指定env
lapply(seq_along(methods), function(i) {
assign(names(methods)[i], methods[[i]], env = .GlobalEnv)
})
使用list
,另一个选项是list2env
list2env(methods, .GlobalEnv)