[R] Genuine relative paths with R

Olivier GIVAUDAN olivier_giv@ud@n @ending from hotm@il@com
Sat Oct 6 13:48:44 CEST 2018


Dear R users,

I would like to work with genuine relative paths in R for obvious reasons: if I move all my scripts related to some project as a whole to another location of my computer or someone else's computer, if want my scripts to continue to run seamlessly.

What I mean by "genuine" is that it should not be necessary to hardcode one single absolute path (making the code obviously not "portable" - to another place - anymore).

For the time being, I found the following related posts, unfortunately never conclusive or even somewhat off-topic:
https://stackoverflow.com/questions/1815606/rscript-determine-path-of-the-executing-script
https://stackoverflow.com/questions/47044068/get-the-path-of-current-script/47045368
http://r.789695.n4.nabble.com/Script-auto-detecting-its-own-path-td2719676.html

So I found 2 workarounds, more or less satisfactory:


  1.  Either create a variable "ScriptPath" in the first lines of each of my R scripts and run a batch (or shell, etc.) to replace every single occurrence of "ScriptPath <-" by "ScriptPath <- [Absolute path of the R script]" in all the R scripts located in the folder (and possibly subfolders) of the batch file.
  2.  Or create an R project file with RStudio and use the package "here" to get the absolute path of the R project file and put all the R scripts related to this project in the R project directory, as often recommended.

But I am really wondering why R doesn't have (please tell me if I'm wrong) this basic feature as many other languages have it (batch, shell, C, LaTeX, SAS with macro-variables, etc.)?
Do you know whether the language will have this kind of function in a near future? What are the obstacles / what is the reasoning for not having it already?

Do you know other workarounds?

Best regards,

Olivier

	[[alternative HTML version deleted]]



More information about the R-help mailing list