我创建了一个conda环境,在这个环境中我安装了github的progresm,它也使用了R包。然而,当我测试程序的安装时,它找不到必要的R包。
当我转到R并检查库路径时,我可以看到它并不是首先在环境中查找包。
> .libPaths()
[1] "/kusers/ancillary/mradzieta/R/x86_64-redhat-linux-gnu-library/4.0"
[2] "/data/mradzieta/anaconda3/envs/squeezemeta/lib/R/library"
在R中,我确实对libpath进行了重新排序:
> myPaths <- .libPaths()
> myPaths <- c(myPaths[2], myPaths[1])
> .libPaths(myPaths)
> .libPaths()
[1] "/data/mradzieta/anaconda3/envs/squeezemeta/lib/R/library"
[2] "/kusers/ancillary/mradzieta/R/x86_64-redhat-linux-gnu-library/4.0"
但是,当我退出R并再次测试安装时,R会恢复到原始的libpath顺序,因为它只在R会话中更改。
如何在我的conda环境中永久重新排列libpath,使它们不会恢复到原始顺序?
如果其他人有这个问题。问题是主目录中的.Reviron文件将R_LIBS=定向到错误的R库。将其更改为conda安装的库解决了我的问题。