我认为将包的内部数据集放入R/sysdata.rda
会使我的函数可以访问数据。但我似乎无法弄清楚如何实际访问此数据帧。 documentation实际上并没有说明如何访问数据,但我的猜测是我可以简单地按名称引用数据框。但是,这似乎不起作用。
我将devtools::use_data()
与internal = TRUE
一起使用,并创建了sysdata.rda。延迟加载设置为TRUE。
为了测试它,我手动加载它只是为了确保它是正确的文件。该文件名为nhanes_files
。在我的函数中,我只是引用nhanes_files
对象并提取必要的数据。当我在我的包项目中测试我的功能时,它似乎工作。当我构建并加载包时,上传到GitHub,然后将包安装到一个新项目中,我收到一个错误:Error in find_data() : object 'nhanes_files' not found
我是否需要做其他事情才能使我的功能可以访问这些内部数据?
以下是最基本的功能,它不起作用:
#' Print NHANES file listing
#'
#' Provides access to the internal data listing all NHANES files
#'
#' @return A data frame with the list of files that can be accessed through the NHANES website. Should not generally be used. Present for debugging purposes and transparency.
#' @export
find_data <- function(){
nhanes_files
}
答案 0 :(得分:6)
如果您的包名称为somepackage
且保存的对象为nhanes_files
且devtools::use_data(nhanes_files, internal = TRUE)
,则您可以通过调用somepackage:::nhanes_files
在您的函数中访问此内容。