【问题标题】:Changing temporary directory in R [duplicate]更改 R 中的临时目录 [重复]
【发布时间】:2016-07-14 02:11:37
【问题描述】:

我正在使用 Windows 虚拟机,并且在上面安装了 R 和 RStudio,我正在尝试更改 R 写入临时文件的目录。

当我启动 R 时,我尝试更改临时目录,然后关闭 R。当我重新启动 R 并尝试 tempdir() 时,它仍然显示旧目录,好像什么都没发生一样。但是,如果在尝试更改 R 中的临时目录后我启动 RStudio 而不是重新启动 R,当我在 RStudio 中尝试tempdir() 时,它会显示我在 R 中设置的新/更新目录。这怎么可能?怎么了?为什么只有 RStudio 响应我更改临时目录而不响应 R,即使那是我更改目录的位置?

【问题讨论】:

  • 更新:所以,显然,即使在 RStudio tempdir() 在 RStudio 中运行代码后返回新目录(和驱动器),我看到它仍然在旧驱动器和目录中写入。我现在更困惑了。

标签: r rstudio temp


【解决方案1】:

您究竟是如何设置临时目录的? ?tempdir 中的 R 文档是这样说的:

默认情况下,tmpdir 将是 tempdir() 给出的目录。这将是 R 会话启动时通过以下规则找到的每个会话临时目录的子目录。依次检查环境变量 TMPDIR、TMP 和 TEMP,并使用第一个找到的指向可写目录的变量:如果没有成功则使用“/tmp”。路径不应包含空格。请注意,在 R 会话中设置任何这些环境变量对 tempdir() 没有影响:每个会话的临时目录是在解释器启动之前创建的。

假设,如果您设置了 TMPDIR 环境变量,R(以及因此 RStudio)应该做正确的事情。请注意,您必须在 R / RStudio 启动之前进行设置;您可以通过将其设置在 ~/.Renviron~/.Rprofile 中来完成此操作。

另请参阅:Change temporary directory

【讨论】:

    【解决方案2】:

    在 Windows 中,对我来说有效的是创建一个名为 Renviron.site 的文件并用

    填充它
    TMPDIR=E:/rtemp 
    TMP=E:/rtemp 
    TEMP=E:/rtemp
    

    其中 E:/rtemp 是我想要临时文件的目录的路径。 因此,您创建一个新的文本文件,用上面的内容填充它,并将其名称(和扩展名)更改为 Renviron.site。

    把它放到R安装目录,目录etc下(例如C:\Program Files\R\R-3.3.2\etc)然后重启RStudio或R。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-04
      • 2012-04-21
      • 1970-01-01
      • 1970-01-01
      • 2013-06-08
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多