.libPaths(blah)什么都不做

时间:2016-08-30 10:46:27

标签: r

如果有人之前问过这个问题,请道歉。我尝试过谷歌搜索和谷歌搜索,但似乎没有人报告这一点。我正在尝试为.libPaths添加路径,但.libPaths(new=blah)似乎没有改变任何内容。这是我的代码:

packagedir = paste0(getwd(),'/extraRPackages/')
newLibPaths = c(packagedir,.libPaths())
print(newLibPaths)
.libPaths(newLibPaths)
print(.libPaths())

...这是第一次打印的输出(我正在传递给.libPaths):

[1] "C:/Users/GCW/Dropbox/Mash share/Phil/R/mashdb/database/extraRPackages/"
[2] "C:/Users/GCW/Documents/R/win-library/3.3"                              
[3] "C:/Program Files/R/R-3.3.1/library"

......和第二个印刷品:

[1] "C:/Users/GCW/Documents/R/win-library/3.3" "C:/Program Files/R/R-3.3.1/library"    

为什么我对.libPaths(new = blah)的调用什么都不做?我很难过!我在RStudio和RPortable中试过它,但两个都给了我相同的输出......任何帮助都非常赞赏...

(通过阅读其他答案我知道有永久改变路径的“正确”方法,但这是我希望能够在一个相当不同寻常的设置中动态完成的事情,如果.libPaths只是做了我的想法它会,我会完成......)

编辑:有人认为这可能是这个问题的重复Changing R default library path using .libPaths in Rprofile.site fails to work - 但我认为不是。我在发布自己的问题之前阅读了这个问题 - 但是在这个问题中,它最后说“如果我启动RStudio,.libPaths()命令似乎可以正常工作” - 但它恰好在RStudio中该命令对我没有任何作用(这是我想要使用它的地方,而不是在RProfile.site文件中,而不是以任何永久的方式)....

2 个答案:

答案 0 :(得分:4)

啊我明白了!传递给.libPaths(blah)的文件夹名称不应以" /"结尾。我将上面的第一行更改为

packagedir = paste0(getwd(),'/extraRPackages')

......一切都很好。为这个愚蠢的问题道歉!

答案 1 :(得分:1)

如果您要添加到.libPaths的目录尚不存在,也会发生这种情况。