che ho scritto un paio di funzioni per un pacchetto che utilizzano i percorsi relativi come:Package percorsi relativi a R
"./data/foobar.rds"
Ecco un esempio di funzione:
foo <- function(x) {
x <- readRDS("./data/bar.rds")
return(x)
}
Ora, se dovessi essere lavorando nel percorso di sviluppo del pacchetto, funziona come mi aspetto. Ma quando carico il pacchetto, questo percorso usa la directory di lavoro corrente piuttosto che il percorso relativo del pacchetto.
Come si imposta in modo tale che il percorso per le funzioni all'interno di un pacchetto mantenga le proprie all'interno dei percorsi relativi del pacchetto?
Vedere '' system.file' e .path.package' – Andrie
Quindi, qualcosa di simile a 'x <-?? ReadRDS (pasta (system.file (package = "pkgname"),"/dati/bar .rds", settembre = ""))'? –
Se si desidera qualcosa di indipendente dal sistema operativo, provare x <- 'readRDS (file.path (system.file (package =" pkgName ")," data "," bar.rds "))' – dickoa