代码之家  ›  专栏  ›  技术社区  ›  BioGeek

如何以其他名称安装R包?

  •  4
  • BioGeek  · 技术社区  · 8 年前

    我在Red Hat Enterprise Linux 6上使用R3.4.1。我有3.0版本的软件包 asreml /tools/bioinfo/app/R-3.4.1/lib64/R/library .

    > library(asreml)
    Loading required package: lattice
    Checking for license <redacted>
    
    > .libPaths()
    [1] "/tools/bioinfo/app/R-3.4.1/lib64/R/library"
    

    asreml4 . 我已经下载了最新版本的*tar.gz文件,但是如果我下载了

    R CMD INSTALL asreml_4.1.0.93.tar.gz
    

    阿斯雷姆 文件夹,覆盖旧版本。那不是我想要的。

    阿斯雷姆4 ,并将该文件夹复制到 然后尝试加载,但加载了错误的版本:

    > library(asreml, lib.loc="/tools/bioinfo/app/R-3.4.1/lib64/R/library/asreml4")
    > packageVersion("asreml")
    [1] ‘3.0.1’
    

    那么,如何将其安装到 这样我就可以用 library(asreml4) ?

    1 回复  |  直到 8 年前
        1
  •  6
  •   G. Grothendieck    8 年前

    1) 编辑描述 下载源代码,编辑描述文件以使用不同的名称,然后构建并安装它。

    2) 独立图书馆 或者,将新版本安装到单独的库中,然后使用其中一个来获得所需的版本:

    library(asreml, lib = ...)
    library(asreml)
    

    .libPaths(new)

    library(asreml)
    

    然后再换回来。

    实现库切换的一个简单方法是使用 dev_mode() 没有参数(来自devtools包)。第一次之后 开发模式() 命令发出时,默认库变成~/R-dev。此时,请使用普通的 install.packages lib= 它将被安装到~/R-dev中 library 开发模式() 再一次。 开发模式() 操纵默认库路径,以便可以使用 .libPaths()

    library(devtools)
    dev_mode() # ~/R-dev now default library
    # ...
    dev_mode() # restore usual default library