如何比较 R 中的平等环境

问题描述 投票:0回答:2

我想检查当前环境是否是R中的全局环境。但是,直接比较似乎不适用于环境。最好的方法是什么?

#doesn't work
sys.frame() == .GlobalEnv
r frame environment
2个回答
11
投票

Matthew Plourde 的解决方案:

> identical(sys.frame(),.GlobalEnv)
[1] TRUE

您还可以检查姓名,尽管这可能不太可靠:

> environmentName(sys.frame())=="R_GlobalEnv"
[1] TRUE

0
投票

print 和 cat 都返回 但不能用于比较。然而格式似乎可以完成这项工作。 只需使用格式(envir1)==格式(envir2)

© www.soinside.com 2019 - 2024. All rights reserved.