Can't/don't you use relative paths?

library(..., lib.loc = "./MyLibrary")

Then your project is perfectly portable. The only thing you need to take care of is to run your code from your project directory. In R-studio this is easily done by using projects. Outside of R-studio it depends on how and with what you are running your code; in general the programme you are using to work with your R-files will know where the R-files are. In the terminal, for example, you can cd to your project dir and work from there.

Jan

On 23-11-2023 20:39, Tony Wilkes wrote:
Hi everyone,

I have a question. I hope it's not a stupid question.

Suppose you'd want to perform version control and project isolation. You'd create a project folder (let's 
call it "MyProject"), and place all the R packages you need for that project inside a subfolder 
(let's say "MyProject/MyLibrary"). Now you create and run an R-script in "MyProject".
install.packages(), library(), etc. all have a lib.loc argument to specify the 
library path. So one can manually specify the path of your project, and then 
you'd have your project isolation and version control fully set-up.

But if I want to set-up the library path automatically, to make it portable, I 
would need to determine the script location. In RStudio I can use the 
'rstudioapi' package, which is very stable, and so does not really require 
version control. But for outside R-Studio, I have not found a very stable 
package that also works.
I prefer not using external R packages that requires version control (i.e. a 
package that changes often-ish): you'd need the package to access the project 
library, but the project library to access the package.

This brings me to my actual question: is it possible to determine the source 
file location of an R script outside of R-Studio, without resorting to R 
packages ? Or else use an R package that is VERY stable (i.e. doesn't change 
every (half) a year, like tidyverse packages tend to do)? commandArgs() used to 
contain the script path (apparently), but it doesn't work for me.

By the way: I wish to get the script path in an interactive session.

Thank you in advance.

Kind regards,

Tony


        [[alternative HTML version deleted]]

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to