Обложка канала

R4marketing | канал Алексея Селезнёва | Язык R

Автор канала Алексей Селезнёв, руководитель отдела аналитики в Netpeak, автор R пакетов: ryandexdirect, rfacebookstat и др. В канале публикуются статьи, доклады, новости, заметки по языку R.

R4marketing | канал Алексея Селезнёва | Язык R

4 года назад
Открыть в
​​Как получить путь к текущему R файлу В Python, перед запуском скрипта создаются ряд глобальных переменных, таких как __name__, __file__, __spec__ и т.д. Путь к файлу скрипта автоматически записывается в переменную __file__, и вы в любой момент из этой переменной можете получить абсолютный путь к файлу выполняемого скрипта. В R под капотом такой механизм не реализован, но вы же помните, что в R на любой чих есть пакет. Функционал по определению пути к текущему, исполняемому R скрипту предоставляет пакет this.path. В нём вам по большей части понадобится всего две функции: ● this.path() - получить абсолютный путь к исполняемому R файлу. ● this.dir() - получить абсолютный путь к директории исполняемого R файла. Функции this.path2(), this.dir2() и this.dir3() делают тоже самое, но если вы их запускаете, например в не сохранённом R файле вместо ошибки вернут NULL или текущую рабочую директорию. В качестве примера можете создать простейший файл test.R, со следующим кодом:
 
library(this.path)

print(this.path())
print(this.dir())
Далее запустите его в пакетном режиме из командной строки, или в RStudio сочетанием клавиш Ctrl + Shift + Enter. Результат:
 
> source("~/test.R", echo=TRUE)

> library(this.path)

> print(this.path())
[1] "C:/Users/Username/Documents/test.R"
attr(,"this.path.n")
[1] 1

> print(this.dir())
[1] "C:/Users/Username/Documents"
#заметки_по_R