我应该使用什么环境 %>% mget
What environment should I use with %>% mget
我正在按名称收集一些对象以在 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
)。
你可能会逃脱 parent.env(environment())
,如
with( e, { c("a","b") %>% mget(env=parent.env(environment())) })
我正在按名称收集一些对象以在 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
)。
你可能会逃脱 parent.env(environment())
,如
with( e, { c("a","b") %>% mget(env=parent.env(environment())) })