Изменение временного каталога в R

Я использую виртуальную машину Windows, на ней установлены R и RStudio, и я пытаюсь изменить каталог, в который R записывает временные файлы.

Когда я запускаю R, я пытаюсь изменить временный каталог, а затем закрыть R. Когда я перезапускаю R и пытаюсь tempdir(), он по-прежнему показывает старый каталог, как будто ничего не произошло. Однако, если после попытки изменить временный каталог в R я запускаю RStudio вместо перезапуска R, когда я пытаюсь tempdir() в RStudio, он показывает новый/обновленный каталог, который я установил в R. Как это возможно? Что происходит? Почему только RStudio реагирует на мое изменение временного каталога, но не R, хотя именно там я меняю каталог?


person g_puffo    schedule 14.07.2016    source источник
comment
Обновление: так что, по-видимому, хотя в RStudio tempdir() возвращается новый каталог (и диск), после запуска кода в RStudio я вижу, что он все еще продолжает писать в старый диск и каталог. Теперь я еще больше запутался.   -  person g_puffo    schedule 14.07.2016


Ответы (2)


Как именно вы устанавливаете временный каталог? Документация R в ?tempdir говорит следующее:

По умолчанию tmpdir будет каталогом, заданным функцией tempdir(). Это будет подкаталог временного каталога для каждого сеанса, который определяется следующим правилом при запуске сеанса R. Переменные среды TMPDIR, TMP и TEMP проверяются по очереди, и используется первая найденная, указывающая на доступный для записи каталог: если ни одна из них не удалась, используется «/tmp». Путь не должен содержать пробелов. Обратите внимание, что установка любой из этих переменных среды в сеансе R не влияет на tempdir(): временный каталог для сеанса создается до запуска интерпретатора.

Предположительно, если у вас установлена ​​переменная окружения TMPDIR, R (и, следовательно, RStudio) должны делать все правильно. Обратите внимание, что вам нужно будет установить перед запуском R/RStudio; скорее всего, вы можете сделать это, установив его в пределах ~/.Renviron или ~/.Rprofile.

См. также: Изменить временный каталог

person Kevin Ushey    schedule 15.07.2016

В Windows для меня сработало создание файла с именем Renviron.site и заполнение его

TMPDIR=E:/rtemp 
TMP=E:/rtemp 
TEMP=E:/rtemp

Где E:/rtemp — это путь к каталогу, в котором мне нужны временные файлы. Итак, вы создаете новый текстовый файл, заполняете его вышеуказанным и меняете его имя (и расширение) на Renviron.site.

Поместите его в каталог установки R, в каталог и т. д. (например, C:\Program Files\R\R-3.3.2\etc) и перезапустите RStudio или R.

person Adrian Stoica    schedule 06.12.2017