日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

R語(yǔ)言入門03:R包安裝的4種方法和常見報(bào)錯(cuò)

 阿越就是我 2024-09-18 發(fā)布于上海

??專注R語(yǔ)言在??生物醫(yī)學(xué)中的使用


設(shè)為“星標(biāo)”,精彩不錯(cuò)過(guò)


聯(lián)系我們,關(guān)注我們

  1. 免費(fèi)QQ交流群1:613637742
  2. 免費(fèi)QQ交流群2:608720452
  3. 公眾號(hào)消息界面關(guān)于作者獲取聯(lián)系方式
  4. 知乎、CSDN、簡(jiǎn)書同名賬號(hào)
  5. 嗶哩嗶哩:阿越就是我

本期目錄:

  • 什么是R包?

  • R包安裝

    • 從CRAN安裝

    • 從bioconductor安裝

    • 從github安裝

    • 本地安裝

  • 其他安裝方法

  • 終極大法

  • R包常見報(bào)錯(cuò)

為了方便大家學(xué)習(xí),我已經(jīng)錄制了配套的視頻,放在了嗶哩嗶哩(我的B站賬號(hào):阿越就是我),免費(fèi)觀看,復(fù)制以下網(wǎng)址粘貼到瀏覽器打開即可:https://space.bilibili.com/42460432/channel/collectiondetail?sid=3740949

別問(wèn)我怎么修改R包的默認(rèn)安裝位置,這不是初學(xué)者該學(xué)的東西,把你的精力用在刀刃上。但是我在合集最后會(huì)介紹如何修改。

R語(yǔ)言學(xué)到后面其實(shí)就是學(xué)習(xí)各種R包和函數(shù)的使用。

什么是R包?

R包是別人整理好的工具包,內(nèi)置各種函數(shù)以及幫助文檔等信息,可以用來(lái)實(shí)現(xiàn)特定的功能。

R包相當(dāng)于手機(jī)里的APP,不同的APP有不同的功能,不同的R包也有不同的功能,比如:有些R包是專門用來(lái)畫熱圖的(pheatmap、complexheatmap等),有些R包是專門用來(lái)做生存分析(survivalsurvminer等)的,等。

R語(yǔ)言在安裝時(shí)會(huì)有很多自帶的R包(包括base、datasetsutils、grDevicesgraphicsstats、methods),這些R包不需要額外安裝,都是出場(chǎng)自帶的,安裝好R語(yǔ)言就能用了。類似于剛買的新手機(jī)有很多內(nèi)置APP,這些內(nèi)置APP是不用自己額外安裝的。

R包安裝

R包就相當(dāng)于手機(jī)里的各種APP,自帶的APP很明顯是無(wú)法滿足日常使用的,所以我們需要自己安裝其他APP。同理,R自帶的R包也是無(wú)法滿足我們要求的,所以我們也要自己安裝其他R包。

安裝R包就類似于給手機(jī)安裝APP,安裝方式有多種。比如:

  • 小米手機(jī)可以從小米應(yīng)用商店安裝APP,也可以從酷安安裝APP,還可以從Google   play安裝,還可以從官網(wǎng)下載apk文件到本地安裝,等;
  • 蘋果手機(jī)可以從App Store安裝,還可以通過(guò)巨魔商店安裝,也可以本地安裝

R包安裝也有多種方法,不同的R包是存放在不同的應(yīng)用商店的。比較常見的R包安裝主要是4種:

  • CRAN安裝,
  • bioconductor安裝,
  • github安裝,
  • 下載安裝包本地安裝。

隨著學(xué)習(xí)的深入你還會(huì)遇見其他安裝方法,我列舉的這幾種是最常見的。

R語(yǔ)言是老外發(fā)明的東西,我們要訪問(wèn)老外的東西,由于眾所周知的原因,是很困難的。不只是R,其他的東西比如Python、Linux等,都是這樣。

所以在安裝R包時(shí),我們一定要先修改鏡像(mirror)(或者你可以使用魔法,就像你使用Google play需要魔法一樣,如果你在國(guó)外的話自然是不需要這一步的)。鏡像可以簡(jiǎn)單理解為中國(guó)人為了方便自己下載安裝,把國(guó)外的東西完整復(fù)制了一份放到國(guó)內(nèi),而且會(huì)隨著國(guó)外的更新而更新。使用鏡像的好處的不需要魔法我們也可以流暢快速地下載安裝R包。

一個(gè)R包只需要安裝一次即可重復(fù)使用,R包也可以更新、卸載、重裝,這個(gè)道理和手機(jī)APP簡(jiǎn)直是一模一樣。

以下是4種R包安裝方法的詳細(xì)介紹,這部分我在嗶哩嗶哩也有相應(yīng)的視頻介紹,點(diǎn)擊即可觀看:R語(yǔ)言零基礎(chǔ)入門

從CRAN安裝

CRAN是最主要的存儲(chǔ)R包的倉(cāng)庫(kù),大多數(shù)R包都是存儲(chǔ)在這里的。

要從CRAN安裝,我們首先要修改鏡像(如果你人在國(guó)外是不需要這一步的)。這個(gè)過(guò)程在安裝好Rstudio之后非常簡(jiǎn)單,依次點(diǎn)擊:Tools-Global Options

然后按照下圖所示依次點(diǎn)擊,在列出的鏡像中任選一個(gè)中國(guó)的鏡像即可(比如我選擇了上海交通大學(xué)的鏡像),選好之后點(diǎn)擊OK即可。這樣就修改好鏡像了,下面就可以暢快的安裝R包了。這種修改鏡像只需要1次修改即可,以后從CRAN安裝R包都會(huì)默認(rèn)使用你選擇的這個(gè)鏡像,不用每次都改。

比如我們現(xiàn)在想要安裝ggplot2這個(gè)R包,使用以下代碼即可:

install.packages("ggplot2")

安裝R包時(shí)一定要注意,R包的名字不能拼錯(cuò),大小寫也不能錯(cuò),而且必須加引號(hào),雙引號(hào)或者單引號(hào)都可以,但是必須是英文狀態(tài)下的!加載R包不需要引號(hào)。

從bioconductor安裝

醫(yī)學(xué)生/醫(yī)生學(xué)習(xí)R語(yǔ)言有相當(dāng)一部分人是想做生信分析的,絕大多數(shù)做生信分析的R包都不在CRAN中,而是存儲(chǔ)在bioconductor中,這個(gè)網(wǎng)站是專門存儲(chǔ)生物信息學(xué)分析所用R包的。

這個(gè)倉(cāng)庫(kù)也是老外建立維護(hù)的,所以要安裝這里的R包,自然也是先要更改鏡像的。

從bioconductor的官方鏡像列表中可知,目前中國(guó)鏡像有以下4個(gè),分別是清華大學(xué)的鏡像、南京大學(xué)的鏡像、中國(guó)科學(xué)技術(shù)大學(xué)的鏡像、西湖大學(xué)的鏡像,如下所示:

每次在安裝bioconductor的R包之前,都要先運(yùn)行以下代碼更換鏡像,任選一個(gè)運(yùn)行即可,目前我推薦你使用西湖大學(xué)的鏡像,原因請(qǐng)看bioconductor有新的鏡像選擇啦

# 使用清華大學(xué)的鏡像
options(BioC_mirror="https://mirrors.tuna./bioconductor")

# 使用南京大學(xué)的鏡像
options(BioC_mirror="https://mirrors./bioconductor/")

# 使用中國(guó)科學(xué)技術(shù)大學(xué)的鏡像
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")

# 使用西湖大學(xué)的鏡像
options(BioC_mirror="https://mirrors./bioconductor")

bioconductor的鏡像不像CRAN那樣只需要改一次,每次在安裝bioconductor的包之前,都需要運(yùn)行一下修改鏡像的代碼。但是隨著學(xué)習(xí)的深入,你以后也可以通過(guò)修改.Rporfile文件實(shí)現(xiàn)1次修改,永久使用!建議初學(xué)者就別搞這些花里胡哨的操作了,還是每次都運(yùn)行一下吧。

運(yùn)行外以上代碼更改好鏡像之后,我們還需要先安裝一個(gè)bioconductor的R包管理器,才能安裝bioconductor中的R包,使用以下代碼安裝bioconductor的R包管理器,也就是BiocManager包:

# R4.3.x對(duì)應(yīng)的bioconductor版本是3.18,R4.4.x對(duì)應(yīng)的版本就是3.19了,注意不要搞錯(cuò),
# 否則會(huì)報(bào)錯(cuò)哦
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install(version = "3.18")

安裝好這個(gè)包管理器之后,就可以安裝bioconductor的R包了。以后再安裝bioconductor的R包時(shí),也不需要再重新安裝這個(gè)包管理器了。

R語(yǔ)言每年會(huì)進(jìn)行1次版本大更新,時(shí)間大約是每年的4月份,bioconductor每年會(huì)進(jìn)行兩次更新,時(shí)間大約是每年的4月份和10月份。bioconductor的版本和R的版本是有對(duì)應(yīng)關(guān)系的,比如R4.2.x對(duì)應(yīng)的bioconductor版本是3.17,R4.3.x對(duì)應(yīng)的bioconductor版本是3.18,R4.4.x對(duì)應(yīng)的是3.19。對(duì)于初學(xué)者來(lái)說(shuō),不建議跨版本使用。

通常來(lái)說(shuō)R語(yǔ)言不需要頻繁的更新,一般不會(huì)影響使用,但是如果你一定要更新的話,建議每年的5月份進(jìn)行更新,剛好是R和bioconductor同時(shí)更新的時(shí)間,此時(shí)的版本剛好匹配,初學(xué)者安裝R包出錯(cuò)的概率要小一些。

比如我們要安裝一個(gè)做差異分析的R包:limma,就可以使用以下代碼:

# 每次都要先改鏡像
options(BioC_mirror="https://mirrors./bioconductor")

# 改完鏡像再安裝
BiocManager::install("limma")

這樣limma包就安裝好了。以后你要安裝bioconductor中的R包,就先改鏡像,然后使用BiocManager::install("xxx")即可。

從github安裝

有一些R包既不在CRAN,也不在bioconductor,而是在github中。要安裝github中的R包,建議借助devtools或者remotes包實(shí)現(xiàn)。

remotes可以認(rèn)為是devtools的精簡(jiǎn)版,其實(shí)區(qū)別不大,所以我個(gè)人比較推薦使用devtools。

首先從CRAN安裝devtools包:

# 沒改鏡像的記得先改鏡像
install.packages("devtools")

安裝好之后再使用install_github()安裝github中的R包,比如,我現(xiàn)在想要安裝easyTCGA這個(gè)包,使用以下代碼即可:

library(devtools)
install_github("ayueme/easyTCGA")

其中easyTCGA是R包的名字,前面的ayueme是倉(cāng)庫(kù)所有者的名字。千萬(wàn)不要寫錯(cuò),寫錯(cuò)必然報(bào)錯(cuò)!

一般你找到這個(gè)R包都會(huì)有介紹如何安裝,直接復(fù)制粘貼即可,github左上角也會(huì)有名字的,照抄就行,比如:

但是國(guó)內(nèi)訪問(wèn)github是有困難的,如果你的網(wǎng)絡(luò)不行,那么這個(gè)方式大概率你會(huì)失敗。有的時(shí)候即使你能打開github的網(wǎng)頁(yè),也不見得你用以上方法就能安裝成功。那么這時(shí)你可以嘗試下面介紹的本地安裝。

本地安裝

本地安裝R包就和本地安裝手機(jī)APP沒有任何區(qū)別,把安裝包下載下來(lái),然后安裝就好了。

還是以上面的easyTCGA為例,如果你要本地安裝,首先你得下載這個(gè)R包到你的電腦上,所以你得找到這個(gè)R包的下載地址才行!

在github上面的R包的下載地址都是有規(guī)律的,通常都是:https://github.com/xxxx/R包名字

比如:easyTCGA包的下載地址是:https://github.com/ayueme/easyTCGA

打開網(wǎng)址后,按照順序依次點(diǎn)擊:Code-Download ZIP,即可把R包下載到本地了(對(duì)你的網(wǎng)絡(luò)有要求,因?yàn)檫@個(gè)網(wǎng)站也是老外的?。?。

下載github的R包

我下載的R包存放在我的E盤-R-R包,這個(gè)文件夾里面,所以存放路徑是:E:/R/R包/easyTCGA-main.zip

此時(shí)安裝包已經(jīng)下載好了,我們可以借助devtools里面的install_local()函數(shù)安裝本地R包:

library(devtools)

# 注意你的R包存放路徑不要寫錯(cuò)!寫錯(cuò)必報(bào)錯(cuò)!
install_local("E:/R/R包/easyTCGA-main.zip")

本地安裝需要注意R包依賴的問(wèn)題。R包依賴的意思是有些R包是建立在其他R包的基礎(chǔ)上的,所以你在安裝時(shí)需要注意先后順序,必須先安裝某個(gè)包然后才能安裝另一個(gè)包,否則就會(huì)出現(xiàn)安裝失敗。比如easyTCGA就是建立在很多R包之上,所以如果你沒提前安裝easyTCGA的依賴包,那么在進(jìn)行本地安裝時(shí)也會(huì)報(bào)錯(cuò)。

這是本地安裝最大的弊端,install.packages()BiocManager::install()在安裝R包時(shí)會(huì)自動(dòng)幫你先安裝依賴包,所以不會(huì)有問(wèn)題。

easyTCGA有以下依賴包,需要你先安裝好下面的依賴包,才能安裝easyTCGA

# 安裝bioconductor上面的依賴R包
# 首先要改鏡像,下面是清華的鏡像,有時(shí)會(huì)有問(wèn)題,可更改其他鏡像試試
options(BioC_mirror="https://mirrors.tuna./bioconductor")
if(!require("BiocManager")) install.packages("BiocManager")
if(!require("TCGAbiolinks")) BiocManager::install("TCGAbiolinks")
if(!require("SummarizedExperiment")) BiocManager::install("SummarizedExperiment")
if(!require("DESeq2")) BiocManager::install("DESeq2")
if(!require("edgeR")) BiocManager::install("edgeR")
if(!require("limma")) BiocManager::install("limma")

# 安裝cran上面的依賴R包
if(!require("survival")) install.packages("survival")
if(!require("broom")) install.packages("broom")
if(!require("devtools")) install.packages("devtools")
if(!require("reshape2")) install.packages("reshape2")
if(!require("data.table")) install.packages("data.table")
if(!require("ggplot2")) install.packages("ggplot2")
if(!require("ggpubr")) install.packages("ggpubr")

以上安裝R包的代碼我加了一個(gè)if判斷語(yǔ)句,意思是:如果我已經(jīng)安裝了這個(gè)R包,就不要重復(fù)安裝了,如果沒安裝,就幫我安裝。

其他安裝方法

除了以上介紹的安裝方法外,還有一些R包的安裝方法比較特殊,這里給大家簡(jiǎn)單介紹下,就以mlr3proba為例。這個(gè)R包由于一些原因不在CRAN中,如果你要安裝Github版本,可以按照以下代碼安裝:

remotes::install_github("mlr-org/mlr3proba")

但是如果你要使用install.packages()函數(shù)安裝,需要按照如下方式進(jìn)行:

install.packages("mlr3proba", repos = "https://mlr-org.v")

終極大法

直接百度、谷歌、必應(yīng)。

比如一個(gè)叫linkET的包,你不知道怎么安裝,直接搜索?。?/p>

R包常見報(bào)錯(cuò)

1. 載入了名字空間'rlang’ 1.0.1,但需要的是>= 1.0.2

`rlang`包的版本太低了,你需要先安裝1.0.2以上版本的`rlang`,記得直接關(guān)閉Rstudio,重新打開再安裝

2. 不存在叫'latticeExtra’這個(gè)名字的程輯包

首先看看自己的拼寫錯(cuò)了嗎?標(biāo)點(diǎn)符號(hào)有錯(cuò)誤嗎?沒問(wèn)題就安裝這個(gè)`latticeExtra`包即可

3. 程序包安裝入'C:/Users/xxx/AppData/Local/R/win-library/4.2’(因?yàn)?lib’沒有被指定)
Warning in install.packages : package 'limma’ is not available for this version of R
A version of this package for your version of R might be available elsewhere

`limma`包在bioconductor上,不在CRAN上,要通過(guò)`BiocManager`安裝。

4. 安裝程序包'mapproj’時(shí)退出狀態(tài)的值不是0

大概率依賴包沒裝好。

5. library(lsmeans) Error: 找不到'lsmeans’所需要的程輯包'emmeans’

缺什么就安裝什么。找不到`lsmeans`就安裝`lsmeans`。

6. 用devtools從github安裝包,無(wú)論是直接安裝還是本地安裝,都報(bào)timeout錯(cuò)誤

github在國(guó)外,訪問(wèn)國(guó)外的網(wǎng)站你得科學(xué)上網(wǎng),你網(wǎng)絡(luò)行嗎?你能訪問(wèn)谷歌不代表你能從github下載東西。

7. 安裝r包時(shí)出現(xiàn):update all/some/none?

問(wèn)你要不要:更新所有R包/部分R包/不更新?輸入n就行了,表示不更新。

8. library(tidyverse)出現(xiàn)一大推字

── Attaching core tidyverse packages ────── tidyverse 2.0.0 ──
? dplyr     1.1.2     ? readr     2.1.4
? forcats   1.0.0     ? stringr   1.5.0
? ggplot2   3.4.2     ? tibble    3.2.1
? lubridate 1.9.2     ? tidyr     1.3.0
? purrr     1.0.1     
── Conflicts ──────────────────────── tidyverse_conflicts() ──
? dplyr::filter() masks stats::filter()
? dplyr::lag()    masks stats::lag()
? Use the conflicted package to force all conflicts to become errors

正常的,不用管,只要沒有`Error`就沒事。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多