R包中的子目录

vkubicki

我正在创建一个R包,并想用子目录来组织我的R子目录。由于仅导出了根目录下R文件中定义的函数,因此我将此代码添加到了根目录下的一个文件中:

sourceDir <- function(path, trace = TRUE, ...) {
  for (nm in list.files(path, pattern = "\\.[RrSsQq]$")) {
    print(nm)
    if(trace) cat(nm,":")           
    source(file.path(path, nm), ...)
    if(trace) cat("\n")
  }
}

sourceDir("R/DataGenerator")

当我在RStudio上使用“ CRTL + SHIFT + B”时,我看到nm文件是源文件。但是,一旦加载了包,就不能使用::或:::来访问在子目录R / DataGenerator中定义的所有功能。

如何导出R的子目录中定义的函数?可能吗?

马丁·摩根

使用DESCRIPTION文件中的“整理:”字段来指定要包含的文件的路径

Collate: foo.R bar/baz.R

生成整理线的助手可能类似于

fls = paste(dir(pattern="R", recursive=TRUE), collapse=" ")
cat(strwrap(sprintf("Collate: %s", fls), exdent=4), sep="\n")

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章