专栏名称: VG生信软件
国内首家从事Windows平台、可视化生物信息学桌面软件开发的公司。致力于提供领先的生物信息学软件产品和系统服务。产品和业务包括:微生物多样性分析软件、转录组分析软件、重测序分析软件、细菌基因组分析系统。
目录
相关文章推荐
Linux就该这么学  ·  运维老鸟私藏的 100 ... ·  昨天  
Linux就该这么学  ·  一文搞懂 DDR 内存原理(值得收藏) ·  2 天前  
Linux就该这么学  ·  抖音创始人张一鸣:10 年面试 2000 ... ·  2 天前  
Linux就该这么学  ·  详解 Java 操作 ... ·  3 天前  
Linux就该这么学  ·  续Win10三年需付超3000元!微软彻底封 ... ·  3 天前  
51好读  ›  专栏  ›  VG生信软件

终极解决方案之R包

VG生信软件  · 公众号  ·  · 2018-01-17 18:00

正文

R包其实很简单,其自带了一个安装函数 install.packages() ,基本可以解决绝大部分问题。

如果出了问题,可通过如下角度分析思考:

  • R语言安装在什么机器上?(linux(ubuntu?centos?),window,mac)

  • R是什么版本?(3.1 ? 3.2 ? http://www.bio-info-trainee.com/1307.html )

  • 安装器是什么版本?(主要针对于bioconductor包的安装)

  • 联网方式是什么?https?http?

  • 选择的 R 包镜像是什么?



R 包安在哪里?

在R里面输入 .libPaths() 即可查看当前的 R 包安装到了机器的哪个地方,这样,可直接进入目录查看有哪些包,每个包都会有一个文件夹。

我安装了哪些包?

你可以用 installed.packages() 查看你已经安装了哪些包。

可以安装哪些 R 包?

你可以用 available.packages() 查看自己的机器可以安装哪些包。

  1. >.libPaths()

  2. [1] "C:/Users/jmzeng/Documents/R/win-library/3.1"

  3. [2] "C:/Program Files/R/R-3.1.0/library"

  4. colnames(installed.packages())

  5. [1] "Package"               "LibPath"               "Version"              

  6. [4] "Priority"              "Depends"               "Imports"              

  7. [7] "LinkingTo"             "Suggests"              "Enhances"            

  8. [10] "License"               "License_is_FOSS"       "License_restricts_use"

  9. [13] "OS_type"               "MD5sum"                "NeedsCompilation"    

  10. [16] "Built"    

  11. ap

  12. > dim(ap)

打开 ap 变量,却发现想安装的 airway 包根本不在。

当然,这肯定不存在。 airway 是 bioconductor 的包,并非 R 默认。

需要调整 contriburl 参数,如下:

  1. > dim(available.packages(contriburl = "https://cran.rstudio.com/bin/windows/contrib/3.2/"))

  2. [1] 8110   17

  3. > dim(ap)

  4. [1] 8155   17

  5. > dim(available.packages(contriburl = "http://bioconductor.org/packages/3.1/bioc/bin/windows/contrib/3.2/"))

  6. [1] 1000   17

  7. > dim(available.packages(contriburl = "http://mirrors.ustc.edu.cn/bioc//packages/3.1/bioc/bin/windows/contrib/3.2/"))

  8. [1] 1000   17

用这个参数,可看不同仓库,甚至不同版本的 R 包共有哪些资源!




如何安装旧版本的包

一般来说,R 语言自带的 install.packages 函数来安装一个包时,都是默认安装最新版的。

但有些 R 包的开发者会引用其它的一些 R 包,且用的是旧版本的功能,可能来不及更新或疏忽了。 如果不得不用他的包,这时候就不得不卸载最新版包,转而安装旧版本包。

操作:

  1. 用 remove.packages这个命令把现在的包卸载掉!

  2. 去包的官网上面找到它的旧版本的下载链接:

    这里拿ggplot2举例: http://cran.r-project.org/src/contrib/Archive/ggplot2/

  1. #packageurl

  2. install.packages(packageurl, repos=NULL, type="source")


  3. #我这里安装它的1.0.1版本,而不是最新版!

  4. #还有很多其它方法,我就不一一举例了,这个是我认为最方便,最直观的!

  5. # install yesterday's version of checkpoint, by date

  6. install.dates('checkpoint', Sys.Date() - 1)

  7. # install earlier versions of checkpoint and devtools

  8. install.versions(c('checkpoint', 'devtools'), c('0.3.3', '1.6.1'))

上面的解决方案 是在 StackOverflow* 上搜索得到的

参考:http://stackoverflow.com/questions/17082341/installing-older-version-of-r-package


如何切换镜像

R语言自带的 install.packages 函数来安装一个包时,都是用的默认的镜像!安装的时候一般会提醒你选择。

如果是用的 Rstudio 这个 IDE,默认镜像就是:https://cran.rstudio.com/

如果用的R语言,就是:http://cran.us.r-project.org

  1. install.packages(pkgs, lib, repos = getOption("repos"),

  2.    contriburl = contrib.url(repos, type),

  3.    method, available = NULL, destdir = NULL,

  4.    dependencies = NA, type = getOption("pkgType"),

  5.    configure.args = getOption("configure.args"),

  6.    configure.vars = getOption("configure.vars"),

  7.    clean = FALSE, Ncpus = getOption("Ncpus", 1L),

  8.    verbose = getOption( "verbose"),

  9.    libs_only = FALSE, INSTALL_opts, quiet = FALSE,

  10.    keep_outputs = FALSE, ...)

如果在国内, install.packages ("ABC",repos="http://mirror.bjtu.edu.cn/ ") , 换成北大的镜像,会有飞一般的感觉!

如果想永久设置,就用 options 修改。

如果是 Rstudio 的 IDE ,只需直接进入全局设置,一劳永逸的选择好镜像!

可以检查一下每个镜像的包是不是一致的:

  1. dim(available.packages(contriburl = "http://cran.rstudio.com/bin/windows/contrib/3.2/"))

更改镜像主页及包的版本即可查看所有镜像各提供哪些包!

当然,我们的bioconductor其实也是有镜像的,只是大部分人都不知道,也不会去用而已!

  1. source("http://bioconductor.org/biocLite.R")

  2. options(BioC_mirror="http://mirrors.ustc.edu.cn/bioc/")

  3. biocLite("RGalaxy")

  4. ##这样就用中科大的镜像来下载包啦

  5. ##bioconductor还有很多其它镜像:https://www.bioconductor.org/about/mirrors/

  6. ##https://stat.ethz.ch/R-manual/R-devel/library/utils/html/chooseBioCmirror.html



常见的R包安装方式

R 自带函数直接安装

这个最简单,不需要考虑各种包之间的依赖关系。

对普通的R包,直接 install.packages() 即可

下载不了,一般是包的名字打错了或是 R 的版本不够。

安装不了,一般是依赖包没弄好,或者电脑缺少一些库文件。

如果实在找不到或者下载慢,一般就用 repos= 来切换一些镜像。

  1. > install.packages("ape")  ## 直接输入包名字即可

  2. Installing package into ‘C:/Users/jmzeng/Documents/R/win-library/3.1

  3. (as ‘lib’ is unspecified)  ##一般不指定lib,除非你明确知道你的lib是在哪里

  4. trying URL 'http://mirror.bjtu.edu.cn/cran/bin/windows/contrib/3.1/ape_3.4.zip'

  5. Content type 'application/zip' length 1418322 bytes (1.4 Mb)

  6. opened URL   ##根据你选择的镜像,程序会自动拼接好下载链接url

  7. downloaded 1.4 Mb

  8. package ‘ape’ successfully unpacked and MD5 sums checked  

  9. ##表明你已经安装好包啦

  10. The downloaded binary packages are in  







请到「今天看啥」查看全文