轻松安装已从CRAN存储库中删除的软件包

18

我想使用一些软件包,但它们已经从CRAN中删除,尽管它们以前可用的版本可以从存档中获取。这些软件包也不在r-forge中。

例如,dynamogafit

尽管这些软件包已被删除,但我发现它们仍然有用并且可以帮助我。

是否可能且如何轻松地安装它们?就像one_line_install('http://sss.tar.gz')一样简单。

顺便说一句,我可能会在Windows和/或OS X中使用它们。因此代码应该设计为“多平台”支持。

4个回答

18

使用devtools软件包非常简单,因为您无需自己下载软件包。例如:

library(devtools)
install_url('http://cran.r-project.org/src/contrib/Archive/dynamo/dynamo_0.1.3.tar.gz')
install_url('http://cran.r-project.org/src/contrib/Archive/gafit/gafit_0.4.tar.gz')

我毫不怀疑这将是跨平台的。

该软件包还具有其他相关和有用的功能,例如install_versioninstall_localinstall_github等。


我尝试过这个方法,但是都失败了。例如,在像你说的那样安装gafit时:`*** arch - i386` `ERROR:包'gafit'编译失败` `* removing 'C:/Users/yangzh/Documents/R/gafit'` `Error:Command failed (1)`这意味着我无法从源代码安装它。我必须从备份存储库下载二进制文件并安装它。 - yangzh
@yangzh 通常包被移除的原因是它们无法编译。 - hadley
此外,GitHub 版本的开发人员已经修复了 install_version("dynamo", "0.1.3") 的问题。 - hadley
@hadley 在我的电脑上运行install_version("dynamo", "0.1.3")会返回错误信息。 :-( - yangzh

8

根据您想要查看的时间点,您也可以使用MRAN快照存档。该存档是 CRAN 每日的快照序列,追溯到 2014 年 9 月。

例如,要安装一个来自 CRAN 的软件包,就像在 2015 年 6 月 30 日那样:

install.package("my_package",
    repos="https://mran.microsoft.com/snapshot/2015-06-30")

1
MRAN 在2023年7月1日被停用。是否有其他存储库可用于安装不再在 CRAN 中的软件包? - Luise

5

尝试

install.packages('/path/dynamo_0.1.3.tar.gz', type = 'source')

在Mac上,path是指你下载的文件路径。就这样!在Windows上,你需要稍微调整一下斜杠的方向:-)


3

值得一提的是,无需使用任何技巧,包gafit再次可用。

正如上面建议的那样,由于核心R系统更改了一些打包约定,它在过去几年中已经失效。希望现在已经完全修复。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接