当 Sys.getenv 和 .libPath 返回库位置的不同文件夹时,这是必需的操作



当 Sys.getenv 和 .libPath 返回库位置的不同文件夹时,是否需要执行操作?

Sys.getenv("R_LIBS_USER") # value of the environment variable R_LIBS_USER
[1] "C:\Users\User\Documents/R/win-library/3.1"  
.libPaths() # the library trees within which packages are looked for
[1] "C:/Revolution/R-Enterprise-7.3/R-3.1.1/library" 

查看函数的帮助文件,我添加了上面的注释。

在这种情况下,库位置存在差异,如果不执行任何操作,是否有副作用?

我必须做什么(例如将上面的库位置设置为相同)作为必须的吗?

我认为答案是否定的。我发现我的价值观不同,这并没有给我带来任何困难。我更喜欢将所有软件包保存在一个库中,并且永远不会安装到我的用户/卷中的 Sys.getenv("R_LIBS_USER") 中的默认值。我目前.libPaths()是:

"/Library/Frameworks/R.framework/Versions/3.3/Resources/library"

我使用的 GUI 让我可以选择使用R_LIBS_USER位置,但我没有选择这样做,因为它在过去会导致我的重复和混乱。您可以做出其他选择,可能是在GUI的"首选项"中,也可以选择在.Rprofile设置中(Windows和Mac上都是隐藏的"点文件",因此您需要知道如何在使用系统浏览器/资源管理器时使它们在操作系统上可见。

最新更新