Как изменить каталог для временных файлов - проблемы с огромными временными растровыми файлами

Я отчаянно пытаюсь writeRaster() но, поскольку растр довольно большой, мне нужно много временной памяти. Пространство на моем C:/ диск ограничен, и поэтому я хочу изменить временный каталог на D:/TEMP/, Я пробовал разные подходы, которые я нашел в Интернете, такие как:

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

http://r.789695.n4.nabble.com/How-do-I-set-the-Windows-temporary-directory-in-R-td876483.html

и т.п.

rasterOptions(tmpdir = "D:/RTEMP/") не решил проблему. Даже если это сработало при расчете растра, оно не влияет на writeRaster() функция.

Я был бы очень благодарен, если кто-нибудь может мне помочь.

Вот мой sessionInfo():

`R version 3.1.2 (2014-10-31)

Platform: x86_64-w64-mingw32/x64 (64-bit)`

1 ответ

Решение

Я получил правильный ответ:

 write("TMPDIR = D:/rtmp/", file=file.path(Sys.getenv('TMPDIR'), '.Renviron'))
 write("R_USER = D:/rtmp/", file=file.path(Sys.getenv('R_USER'), '.Renviron'))

Это меняет даже временный каталог writeRaster() функция

ОБНОВИТЬ:

для тех из вас, у кого могут возникнуть проблемы с этой ошибкой (из-за ограниченных прав доступа)

> write("TMPDIR = D:/rtmp/", file=file.path(Sys.getenv('TMPDIR'), '.Renviron'))
Error in file(file, ifelse(append, "a", "w")) : 
  cannot open the connection
In addition: Warning message:
In file(file, ifelse(append, "a", "w")) :
  cannot open file '/.Renviron': Permission denied

я нашел это

rasterOptions(tmpdir = "D:/rtmp/")
write("R_USER = D:/rtmp/", file=file.path(Sys.getenv('R_USER'), '.Renviron'))

также решает проблему.

Другие вопросы по тегам