寫在前面
安裝R包報錯的問題從一開始學(xué)生信就一直存在著,但是沒有專門整理一下,前兩天安裝 CHIPseeker 的時候?qū)嵲谑懿涣肆耍驗榕鲆娏撕枚嗫?,于是在這里專門整理一下,方便自己和他人查看
安裝的時候要注意R版本問題(比如 R3.6 以后就無法用 biocLite 了)以及包版本問題,不懂為啥的時候就多嘗試幾種方法,總有一個適合你~
用的 R3.5.0
問題 1 不存在叫‘gplots’這個名字的程輯包
Error: package or namespace load failed for ‘ChIPseeker’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
不存在叫‘gplots’這個名字的程輯包
#安裝這個包
> install.packages("gplots")
#繼續(xù)報錯
Warning in install.packages :
dependency ‘caTools’ is not available
#安裝他的依賴包 caTools
>install.packages("caTools")
Warning in install.packages :
package ‘caTools’ is not available (for R version 3.5.0)
到這里已經(jīng)沒太有耐心了,然后開始查原因,后面應(yīng)該加一個 type = "binary"
再試一下
>install.packages("caTools", type = "binary")
trying URL 'https://mirrors.tuna.tsinghua.edu.cn/CRAN/bin/windows/contrib/3.5/caTools_1.17.1.4.zip'
Content type 'application/zip' length 329947 bytes (322 KB)
downloaded 322 KB
package ‘caTools’ successfully unpacked and MD5 sums checked
成功解決,安裝 XML 時同樣也是這個問題 ,跟上面是一種解決方式
問題 2 用 BiocManager 下載TxDb.Hsapiens.UCSC.hg38.knownGen報錯
主要問題是包比較老,嘗試用 biocLite 解決
>source("https://bioconductor.org/biocLite.R")
>biocLite("TxDb.Hsapiens.UCSC.hg38.knownGen")
BioC_mirror: https://bioconductor.org
Using Bioconductor 3.8 (BiocInstaller 1.32.1), R 3.5.0 (2018-04-23).
Installing package(s) ‘TxDb.Hsapiens.UCSC.hg38.knownGene’
installing the source package ‘TxDb.Hsapiens.UCSC.hg38.knownGene’
安裝 TxDb.Hsapiens.UCSC.hg19.knownGene 就不能用 biocLite 了
>BiocManager::install("TxDb.Hsapiens.UCSC.hg19.knownGene")
問題 3 #Error in list2(...) : object '%>%' not found
Error : unable to load R code in package ‘dbplyr’
解決辦法
#去清華鏡像下載源碼
wget https://mirrors.tuna.tsinghua.edu.cn/CRAN/src/contrib/dbplyr_1.4.4.tar.gz
#修改NAMESPACE,重新打包
tar xf dbplyr_1.4.3.tar.gz
echo 'importFrom(magrittr,"%>%")' >> dbplyr/NAMESPACE
tar cf dbplyr_1.4.3.tar.gz dbplyr/
#重新安裝
install.packages('下載路徑/dbplyr_1.4.3.tar.gz')
問題4 #Error:failed to lock directory
應(yīng)該是之前安裝包的時候中途停止了,再重新安裝的時候就會出現(xiàn)這個報錯
解決:去 lib_PATH下把lock文件刪掉
問題 5 as ‘lib’ is unspecified 'lib = "C:/Program Files/R/R-2.15.2/library"' is not writable
路徑問題,首先 .libPaths() 看一下,然后指定一個路徑
> .libPaths()
>.libPaths("/PATH/R/x86_64-redhat-linux-gnu-library/3.6")
這里是問題 5的參考
最后
雖然討論了一些R包安裝問題,但這應(yīng)(jue)該(dui)不會是我最后一次安裝報錯,以后再遇到會更新的
tidyverse安裝問題
這個包安裝起來太容易報錯了,近期重新安裝了R,將安裝中遇到錯誤的包使用conda安裝上,終于成功了
conda install -c conda-forge r-ragg
######進入R
BiocManager::install("tidyverse")
conda install -c conda-forge r-gert
install.packages("devtools")
再次更新
近期學(xué)習(xí)單細胞相關(guān)內(nèi)容,需要安裝很多R包,經(jīng)過這幾天的折騰,其實發(fā)現(xiàn)也就是那三板斧就可以完成R包的安裝了
如果版本不合適,就去Index of /CRAN/src/contrib/ | 清華大學(xué)開源軟件鏡像站 | Tsinghua Open Source Mirror網(wǎng)站下載安裝包,然后install.packages("/usr/data/Rpackage/xxx.tar.gz")就可以了,如果有需要的依賴無法安裝,那就需要逐步安裝他所需要的依賴,使用conda install -c conda-forge r-xxx,當(dāng)然這一步要慎用,特別是當(dāng)你在一個環(huán)境下有很多R包時,conda打包安裝好之后會跟原來的其他依賴包存在沖突,要多嘗試幾次找到最難安裝的那個包使用conda進行安裝。