我在将sleuth安装到R studio时遇到了麻烦。我已经尝试过使用Stockoverflow中建议的方法进行故障排除,标题为 "安装路径不可写R,无法更新包"(链接。安装路径不可写R,无法更新包。). 我一直收到以下错误信息。
错误信息。
Bioconductor version 3.10 (BiocManager 1.30.10), R 3.6.1 (2019-07-05)
Installation path not writeable, unable to update packages: boot, class, foreign, KernSmooth, lattice,
MASS, Matrix, mgcv, nlme, nnet
Old packages: 'isoband', 'purrr', 'RcppArmadillo', 'RCurl', 'reshape2', 'survival'
Update all/some/none? [a/s/n]:
BiocManager::install("devtools") # only if devtools not yet installed
Update all/some/none? [a/s/n]:
BiocManager::install("pachterlab/sleuth")
Update all/some/none? [a/s/n]:
当我输入这个代码时
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install()
BiocManager::install("devtools") # only if devtools not yet installed
BiocManager::install("pachterlab/sleuth")
谢谢你的帮助!
这个答案 可能会有帮助。
看起来,违规的软件包(boot
, class
, foreign
等)安装在您没有写入权限的位置。
原则上说 sleuth
软件包应该已经安装完毕,尽管有错误信息(你可以通过执行 library(sleuth)
在R控制台中).但是,为了避免每次安装(BioConductor)包时出现这些错误,我建议您在您有写权限的目录下重新安装这些违规包。然而,为了避免每次安装(BioConductor)包时出现这些错误,我建议将这些违规的包重新安装到您有写入权限的目录中。根据您的操作系统,这可能在不同的位置。
我发现 本指南 对维护R包特别有用。
简而言之(所有命令都在R中运行)。
remove.packages()
,如果 sleuth
安装了,把它也删除掉,我们以后会以更可维护的方式再安装一次。Sys.getenv("R_LIBS_USER")
这通常应该是你的主目录下的一个目录路径。R_LIBS_USER
目录还不存在,用 dir.create(Sys.getenv("R_LIBS_USER"))
.libPaths()
现在,第一个元素应该是您刚刚创建的目录(即与 Sys.getenv("R_LIBS_USER")
), 现在这是安装R包的默认目录。sleuth
又以 BiocManager::install("pachterlab/sleuth")
这通常也会安装所有的依赖关系。如果没有,你可能需要单独安装它们。希望这能帮助你