Относительные пути пакетов в R

Я написал несколько функций для пакета, которые используют относительные пути, например:

"./data/foobar.rds"

Вот пример функции:

foo <- function(x) { 
x <- readRDS("./data/bar.rds")
return(x)
}

Теперь, если бы я работал на пути разработки пакета, это работало бы так, как я ожидаю. Но когда я загружаю пакет, этот путь использует текущий рабочий каталог, а не относительный путь пакета.

Как настроить его таким образом, чтобы путь для функций в пакете сохранял свои относительные пути в пакете?


person Brandon Bertelsen    schedule 15.08.2012    source источник
comment
См. ?system.file и ?.path.package   -  person Andrie    schedule 16.08.2012
comment
Итак, что-то вроде x <- readRDS(paste(system.file(package="pkgName"),"/data/bar.rds",sep=""))?   -  person Brandon Bertelsen    schedule 16.08.2012
comment
Если вам нужно что-то независимое от ОС, попробуйте x ‹- readRDS(file.path(system.file(package = "pkgName"), "data", "bar.rds"))   -  person dickoa    schedule 16.08.2012


Ответы (1)