1. 下载方法
install.packages("package_name")
- 从Bioconductor上下载
library(BiocManager)
install("package_name")
#或者
BiocManager::install("package_name")
- 从github上下载
install.packages("devtools")
library(devtools)
install_github("package_name")
- 本地安装
Tools -> install packages
2. 解决方法汇总
- 重新设定当前的R包的资源库列表: 如存在 can not open url https 的错误
setRepositories(addURLs = c(CRANxtras = "http://cran.at.r-project.org/"))
- 更改镜像: 如有 http status was ‘404 not found’,can not connect 等错误
options(repos=structure(c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))) #切换成国内镜像都可
- 安装Rtools: 如有需要Rtools才可打包,copy文件失败等错误
library(stringr)
library(installr)
install.Rtools()
-
更新R版本
Tools -> Global Options
-
如果install.packages报错,有可能是因为该R包只发布在Bioconductor或github上,可以试下其他下载方法
-
更改下载包版本的网址: 如有 package xxx is not available for 的错误
参考链接:https://www.cnblogs.com/lph970417/p/11655371.html
#上官网查询R版本对应的包版本
install.packages("BiocInstaller", repos ="http://bioconductor.org/packages/3.7/bioc")
血泪的教训!!!
在安装DESeq2包时说有几个依赖包had non-zero exit status的错误,最后决定通过本地安装这几个依赖包,结果这几个依赖包内又有好几个依赖包报错,安装了几个包后才发现报错原因可能是因为R版本低了(当时安装时用的是R 3.6.0,最新版本是R 3.6.1),使用以下函数更新R版本以后
library(installr)
updateR()
并将旧版本的R 里的library文件夹复制到新版本里(这样就不用重新安装R包了,不过好像有部分R包会缺失),再输入安装命令一下子就安装好了,但加载时发现data.table包有问题,重装了Rtools才弄好了,所以千万不要偷懒不更新R,有条件的也要将Rtools安装好!!!
总结: 绝大部分R包安装报错都和网速有关,可以选择一个网速好的地方下载或者更改中国镜像解决。其次可能和R版本或Rtools有关。如果还是不行的话最好就把R包下载到本地进行安装。
3.具体问题汇总
1) 问题1: package ‘S4Vectors’ 0.22.1 was found, but >= 0.23.22 is required by ‘IRanges’
分析: 我在安装Irange和S4Vectors的时候是通过本地安装的方法进行安装的,但S4Vectors>=0.23.22的版本只能通过用代码安装Irange的时候一起安装下来,所以报错了
解决方法:
2) 问题2:org.Hs.eg.db包安装
分析: 可能是因为这个包特别大,有60多M,网速不行的情况下很难安装。
解决方法: 本地安装,但本地安装的缺点如下图所示,需要一个一个将它的依赖包安装好,而且需要注意安装依赖包的时候最好用代码进行安装而别用本地安装,否则容易出现问题1的错误
3) 问题3:本地安装后加载时报不是有效的已经安装了的程序包的错误
分析: 这是从github上下载的包,本地下载该包时会报以上错误,可能是因为下载的压缩包里缺了什么东西。
解决方法:
首先将该包解压成一个文件夹再运行以下命令
4) 问题4:安装data.table包
分析: https://www.mail-archive.com/r-help@r-project.org/msg248706.html提到安装不成功的可能原因是Rtools没安装。但我当时已经装过Rtools了,不知道是不是因为没有放在R文件夹里所以不行,或者是版本不对。
解决方法:
- 重装Rtools,将Rtools放在R目录下,注意要选好对应版本Rtools,我的R是3.6.1,所以选择了Rtools35安装
- 和装成功这个包的人要一份这个包的拷贝复制到自己R的library里
ps: 这个包很恶心,本地安装一直报错
用devtools的install函数安装也会说man文档有问题,如果连本地安装都不行了最好上谷歌或者必应找下解决方法吧。