在我正在处理的一个程序包中,我想使用另一个程序包(例如“ pckg”)中的数据。该包已导入(在DESCRIPTION中为“ Imports:pckg”,在名称空间中为import(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
}
关于r - 在包中使用外部数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42555811/