分享

用for循环来安装R包

 微笑如酒 2019-02-15

大神一句话,菜鸟跑半年。我不是大神,但我可以缩短你走弯路的半年~

   就像歌儿唱的那样,如果你不知道该往哪儿走,就留在这学点生信好不好~

   这里有豆豆和花花的学习历程,从新手到进阶,生信路上有你有我!

大年初三,加油油。

首先搞清楚R包的来源及对应的安装方式:
来自CRAN:install.packages()

来自Biocductor: BiocManager::install()

来自Github:devools::install_github()

(此处推荐jimmy大神的R包一枚,如图)

根据来源的不同将R包分开,包的名字组成字符串向量。


cran_packages <>'tidyverse',
                   'ggpubr',
                   'ggstatsplot')
Biocductor_packages <>'org.Hs.eg.db',
                         'hgu133a.db',
                         'CLL',
                         'hgu95av2.db',
                         'survminer',
                         'survival',
                         'hugene10sttranscriptcluster',
                         'limma')

先设置镜像,然后将向量作为循环的输入,逐个执行安装

if(length(getOption('CRAN'))==0) options(CRAN='https://mirrors.tuna./CRAN/')
for (pkg in cran_packages){
  if (! require(pkg,character.only=T) ) {
    install.packages(pkg,ask = F,update = F)
    require(pkg,character.only=T
  }
}
# first prepare BioManager on CRAN
if(length(getOption('CRAN'))==0) options(CRAN='https://mirrors.tuna./CRAN/')
if(!require('BiocManager')) install.packages('BiocManager',update = F,ask = F)
if(length(getOption('BioC_mirror'))==0) options(BioC_mirror='https://mirrors.ustc.edu.cn/bioc/')
# use BiocManager to install
for (pkg in Biocductor_packages){
  if (! require(pkg,character.only=T) ) {
    BiocManager::install(pkg,ask = F,update = F)
    require(pkg,character.only=T
  }
}

无需理会中间的报错,挨个加载(library)看是否报错(这个不能用循环),不报错就是安装成功。报错说不存在什么包,就到回头去安装什么包。以加载时的报错为准。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多