r - 如何下载整个CRAN存储库?

标签 r repository cran

对于没有互联网的离线Linux机器,安装具有大量依赖项的R包是一场噩梦。我在 SE 中发现了几篇帖子,讨论如何创建本地文件夹、复制所需的包 zip 文件并使用“install.packages”进行安装。

但是,查找、下载大量包并将其上传到离线服务器是一项耗时的工作。所以,我想知道如何下载所有 CRAN 包的整个 zip 文件,以便将它们放入本地离线计算机的 http Web 服务器目录中,并像真正的存储库一样运行。大小可能会很大,大约 200 GB,但对于企业环境,我认为这应该是有意义的。

我找到了指南 here讨论如何成为官方的 CRAN 镜像,但我不会成为官方的公共(public)镜像。

请指教。 提前致谢

最佳答案

您可以使用函数available.packages查找可用的软件包。

pkgnames <- available.packages()[,1]

如果您喜欢网页抓取,可以按如下方式练习。

library(rvest)
pkgs <- read_html("https://cran.r-project.org/web/packages/available_packages_by_name.html")
tab <- html_nodes(pkgs, "table") %>% html_table(fill = TRUE)

pkgnames <- tab[[1]][1]$X1
pkgnames <- pkgnames[nchar(pkgnames)>0]

除非您想安装(或下载)大量软件包,否则不要运行这些程序!!

#sapply(pkgnames, install.packages)
#sapply(pkgnames, install.packages)

您可以运行此行来证明它有效。

sapply(pkgnames[1:2], install.packages)

您可以替换install.packagesdownload.packages以及 destdir参数将其保存到您的公司目录。

关于r - 如何下载整个CRAN存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39051381/

相关文章:

git - 没有 fork 的 pull 请求?

git - 当我在 master 上使用 BFG Repo-Cleaner 时,其他分支会发生什么

windows - Windows 上的 Github "Failed to publish this branch"错误

r - 使用另一个R包中的未导出功能?

r - 如何使用固定的外部层次集群创建热图

r - 在shinydashboard::box 中格式化helpText

r - 在 R Shiny 中的公共(public)服务器功能下根据先前的 selectInput 更新 selectInput

R MICE 插补失败

r - 我可以获得 install.packages 将使用的内容的 URL 吗?

r - 基于 "references describing the methods in your package"的 CRAN 拒绝