Mat*_*att 5 r rstudio virtual-environment renv
在之前使用依赖 R 3.6.3 之后,我最近安装了 R 4.0。为了管理 R 存储库,我使用 Rstudio(目前在 Windows 10 机器上为 1.2.5042)。升级到 R 4.0 后,我打开了几个月前的一个项目,发现 Rstudio 现在默认使用较新版本的 R(及其库文件夹)。运行时renv::restore(),renv尝试为较新版本的 R 重新安装 .lock 文件中的所有库,但我看不到任何方式来指定我想继续使用 R 3.6.3 及其关联库。
来自 python 背景,我认为这renv将创建一个虚拟环境,将解释器和项目使用的库隔离(类似于 anaconda 环境的创建方式)。但是,在查看文档并进行了一些搜索后,我发现没有提到隔离特定版本的 R。但是,我发现 Rstudio 默认使用最新版本的 R,这不一定是我想要。
我曾尝试使用 anaconda 来管理 R 环境。然而,Anaconda 依赖于它自己的较小的 R 包存储库,我需要的许多库都来自将代码存放在 GitHub 上的研究人员。
有没有办法创建一个 R 环境,在其中我可以隔离 R 库和 R 本身的版本?或者,也许我缺少关于如何使用 R/Rstudio 环境的一些东西?
您是对的,renv只管理已安装的 R 软件包,而不管理 R 解释器本身。
根据您使用 RStudio 的方式,您仍然可以通过设置RSTUDIO_WHICH_R环境变量来“伪造”它。例如:
export RSTUDIO_WHICH_R=/path/to/R
rstudio
Run Code Online (Sandbox Code Playgroud)
会告诉 RStudio “绑定”到环境变量指定的 R 版本RSTUDIO_WHICH_R。
无论如何,将项目绑定到特定 R 版本的能力是 RStudio 专业版的一项功能;但是,它在开源版本中不可用。请参阅此处了解更多详细信息。