我们可以使用该对象的名称(assign("x", 1)
(为单个对象赋值,并且由于zeallot
包(c(x, y) %<-% c(1, 2)
(,我们可以有效地为多个对象分配不同的值,但是我们可以同时做到吗?我基本上只想做c("x", "y") %<-% c(1, 2)
,我只能想到以这种可爱的方式去做:
invisible(mapply(function(i, j) assign(i, j, envir = .GlobalEnv), i = c("x", "y"), j = c(1, 2)))
有没有更好的方法?
您可以将列表的命名元素列出到环境中:
list2env(setNames(as.list(c(1,2)),c("x","y")),.GlobalEnv)