我按名称收集一些对象,以便在RDS中保存为列表:
A = 1
B = 2
mget(c("A","B"))
如果我想管道......
library(magrittr)
c("A","B") %>% mget # nope
c("A","B") %>% mget(env = globalenv()) # ok
但如果我在某个环境中工作而且我不想重新输入其名称......
e = new.env()
e$a = 1
e$b = 2
with(e, {
# do some stuff, then...
c("a","b") %>% mget
})
我假设我应该输入%>% mget(env = something)
,但无法弄明白(e
除外)。
答案 0 :(得分:3)
您可能可以使用parent.env(environment())
,例如
with( e, { c("a","b") %>% mget(env=parent.env(environment())) })