在我正在处理的软件包中,我想使用来自另一个软件包的数据(例如," pckg")。该软件包是导入的(命名空间中的描述和导入(PCKG)中的"导入:PCKG")。在其中一个功能中,我有以下内容:
someFunc <- function() {
data(pckgdata)
foo <- pckgdata$whatever
}
检查程序包时会导致以下错误消息:
someFunc: no visible binding for global variable ‘pckgdata’
someFunc : <anonymous>: no visible binding for global variable
‘pckgdata’
Undefined global functions or variables:
pckgdata
我应该如何正确使用自己软件包中其他软件包的数据集?
这是@HRBMSTR的答案的描述(请参阅问题注释)。简而言之:首先,创建一个拥有新环境的全局变量。然后,将数据加载到该环境中。然后,通过全局变量访问数据:
.myenv <- new.env(parent=emptyenv())
someFunc <- function() {
data("pckgdata", package="pckg", envir=.myenv)
foo <- .myenv$pckgdata$whatever
}