R中的包相对路径

Bra*_*sen 11 r r-package

我为使用相对路径的包编写了一些函数,例如:

"./data/foobar.rds"
Run Code Online (Sandbox Code Playgroud)

这是一个示例函数:

foo <- function(x) { 
x <- readRDS("./data/bar.rds")
return(x)
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我要在包的开发路径中工作,这就像我期望的那样工作.但是当我加载包时,此路径使用当前工作目录而不是包的相对路径.

如何设置它以使包中的函数路径保持在包相对路径中?

Jos*_*ien 5

正如Andrie所说,你可以使用system.file,"在包中找到文件的完整文件名等".

x <- readRDS(system.file("help", "aliases.rds", package="MASS"))
Run Code Online (Sandbox Code Playgroud)