我正在一台新的Windows 10机器上设置R/RStudio;第一次在非UNIX环境中设置它,所以请耐心等待。
根据我以前在 Linux 和 macOS 下使用 R/RStudio 的经验,我想为系统和用户设置单独的库,即 RStudio 中的"包"窗格将显示用户库和系统库。
我将帐户的R_LIBS_USER
环境变量指定为C:Users[user name]DocumentsRwin-library3.5
。
运行 R/RStudio 时,.libPaths()
如下:
> .libPaths()
[1] "C:/Users/[user name]/Documents/R/win-library/3.5"
[2] "C:/Program Files/R/R-3.5.0/library"
这几乎是我想要的:第一个库路径是默认的用户库,第二个路径是系统库。我可以随意安装软件包,默认情况下它们位于用户库中。
但是,RStudio 中的"包"窗格不会显示用户库和系统库的两个单独库。相反,所有软件包(base
除外(都显示在"系统库"下;包括我的用户库中的包。我现在的问题是:
有没有办法告诉 R/RStudio,我的用户库和系统库是两个独立的实体,应该在 RStudio 的包窗格中直观地分开?
注意:我知道这可能只是一个"表面"问题;但它仍然困扰着我!另外,我不确定这是纯R还是RStudio问题,所以我标记了两者。
编辑:我还注意到,在"包"窗格中安装新包时,系统库(C:/Program Files/R/R-3.5.0/library
(不作为下拉选项使用。
--
> devtools::session_info()
Session info --------------------------------------------------------------
setting value
version R version 3.5.0 (2018-04-23)
system x86_64, mingw32
ui RStudio (1.1.453)
language (EN)
collate Nothing to worry about
tz This neither
date 2018-06-08
Packages ------------------------------------------------------------------
package * version date source
base * 3.5.0 2018-04-23 local
compiler 3.5.0 2018-04-23 local
datasets * 3.5.0 2018-04-23 local
devtools 1.13.5 2018-02-18 CRAN (R 3.5.0)
digest 0.6.15 2018-01-28 CRAN (R 3.5.0)
graphics * 3.5.0 2018-04-23 local
grDevices * 3.5.0 2018-04-23 local
memoise 1.1.0 2017-04-21 CRAN (R 3.5.0)
methods * 3.5.0 2018-04-23 local
stats * 3.5.0 2018-04-23 local
tools 3.5.0 2018-04-23 local
utils * 3.5.0 2018-04-23 local
withr 2.1.2 2018-03-15 CRAN (R 3.5.0)
yaml 2.1.19 2018-05-01 CRAN (R 3.5.0)
我遇到了完全相同的问题。就我而言,原因是使用替代驱动器作为用户库:
> subst
F:: => C:dataflash drive
将R_LIBS_USER
设置为F:/[...]
显示外观错误,使用C:/data/flash drive/[...]
有效。
就我而言,Sys.getenv("R_LIBS_USER")
如下:
"C:\Users\USERNAME\AppData\Local/R/win-library/4.2"
此路径包含两个反斜杠,因此这会导致无法正确识别环境变量。 接下来,我寻找了一个放置的地方.伦维隆如下
R.home(component = "etc")
我创建了.Renviron(或 Renviro.site(在该文件夹中,并将其与以下内容一起保存在内容中,并且它起作用了。
R_LIBS_USER=C:/Users/${USERNAME}/AppData/Local/R/win-library/%v