【问题标题】:How do I install a package that has been archived from CRAN?如何安装已从 CRAN 存档的软件包?
【发布时间】:2014-08-03 08:51:34
【问题描述】:

我在 R 命令行中输入了以下内容:

install.packages("RecordLinkage") 

我收到以下错误:

Warning in install.packages :
  package ‘RecordLinkage’ is not available (for R version 3.1.0)

但是,我的一位同事在完全相同的 R (3.1.0) 版本上做了完全相同的事情,并且成功了。此外,我还成功安装了其他软件包。

知道为什么这不起作用吗?任何帮助将不胜感激。

【问题讨论】:

标签: r installation package r-faq


【解决方案1】:

该软件包已存档,因此您必须从存档中安装。

我知道这一点是因为 http://cran.r-project.org/web/packages/RecordLinkage/index.html 的软件包主页告诉我:

Package ‘RecordLinkage’ was removed from the CRAN repository.

Formerly available versions can be obtained from the archive.

Archived on 2015-05-31 as memory access errors were not corrected.

通过点击档案链接 (http://cran.r-project.org/src/contrib/Archive/RecordLinkage),我得到了所有旧版本的列表:

[   ]   RecordLinkage_0.3-5.tar.gz  12-Sep-2011 18:04   688K     
[   ]   RecordLinkage_0.4-1.tar.gz  12-Jan-2012 09:39   676K     

所以现在我知道了最新版本的版本号。前进的方法是下载 tarball,安装所有包依赖项,然后从本地下载的文件安装包。

试试这个:

# Download package tarball from CRAN archive

url <- "http://cran.r-project.org/src/contrib/Archive/RecordLinkage/RecordLinkage_0.4-1.tar.gz"
pkgFile <- "RecordLinkage_0.4-1.tar.gz"
download.file(url = url, destfile = pkgFile)

# Expand the zip file using whatever system functions are preferred

# look at the DESCRIPTION file in the expanded package directory

# Install dependencies list in the DESCRIPTION file

install.packages(c("ada", "ipred", "evd"))

# Install package
install.packages(pkgs=pkgFile, type="source", repos=NULL)

# Delete package tarball
unlink(pkgFile)

注意:

这只有在您的机器上安装了构建工具时才有效。在 Linux 上就是这种情况。但在 Windows 上,如果您还没有 RTools,则必须安装它。在 OS X (Mac) 上,您必须安装 XCode 和相关的命令行工具。

【讨论】:

  • OS X 上的构建工具确实需要一些安装(XCode 和相关的命令行工具)。
  • 如果您有编译工具,您也可以使用devtools::install_version("RecordLinkage",version="0.4-1") 作为快捷方式。
  • 非常感谢大家的帮助! @Andrie 我将您的代码复制并粘贴到 RStudio 中,它运行良好(但我必须先下载 RecordLinkage 依赖的其他一些包)。
  • 另请参阅 stackoverflow.com/questions/18655976/… 以获得类似于 Ben Bolker 的单行答案。
  • 我可以建议https 而不是http 吗? (也许在这个答案的时候它不可用,现在它是)
【解决方案2】:

还有来自 Rstudio 博客的这个解决方案

require(devtools)
install_version("ggplot2", version = "0.9.1", repos = "http://cran.us.r-project.org")

https://support.rstudio.com/hc/en-us/articles/219949047-Installing-older-versions-of-packages

【讨论】:

    【解决方案3】:

    如果使用 Rstudio,请在“Install Packages”窗口中选择“install from Package Archive File(.zip;.tar.gz)”。

    【讨论】:

      【解决方案4】:

      在 linux 上这很简单:

      sudo su - -c "R -e \"devtools::install_url('https://cran.r-project.org/src/contrib/RecordLinkage_0.4-10.tar.gz')\""
      

      【讨论】:

        猜你喜欢
        • 2013-09-10
        • 2021-08-30
        • 2013-06-18
        • 1970-01-01
        • 1970-01-01
        • 2019-10-23
        • 1970-01-01
        相关资源
        最近更新 更多