我希望这个问题不会重复,因为我搜索它没有找到任何答案(如果它是重复的,请让我知道我将其删除)。
我正在尝试打印/显示环境的内容,但是无法执行。
library(rlang)
e1 <- env(a = 1:10, b= letters[1:5])
Run Code Online (Sandbox Code Playgroud)
当我使用时print,它只是给我内存地址,而不是该环境的内容(名称和值)。
> print(e1)
<environment: 0x00000000211fbae8>
Run Code Online (Sandbox Code Playgroud)
注意:我可以看到环境。R studio环境选项卡中的内容,我正在使用R版本:“ R版本3.4.2”和rlang:rlang_0.2.0
我的问题是:打印环境内容的正确功能是什么,对不起,这个问题可能很幼稚,但我无法弄清楚。提前致谢
我们可以使用getwith envir参数来获取特定环境中的值
sapply(ls(e1), function(x) get(x, envir = e1))
#$a
# [1] 1 2 3 4 5 6 7 8 9 10
#$b
#[1] "a" "b" "c" "d" "e"
Run Code Online (Sandbox Code Playgroud)
哪里
ls(e1) # gives
#[1] "a" "b"
Run Code Online (Sandbox Code Playgroud)