r - 获取特定日期的 CRAN R 包版本
问题描述
有没有一种简单的方法来获取特定日期的 CRAN 包及其版本的列表?
例如这样的代码:
package_versions(packages = c("data.table", "lubridate"), date = "2018-01-01")
# Output
tribble(~package, ~version,
"data.table", "1.10.4-3",
"lubridate", "1.7.1")
一个想法是将检查点设置为特定日期,然后使用类似packageVersion
. 但我想知道是否有一些更简单的方法不需要安装所有这些包。也许刮https://mran.microsoft.com/timemachine?
解决方案
尝试一下:
pack_version <- function(pack_list,date){
require(rvest)
myfunc <- function(x=pack_list,){
url<-paste0("https://cran.microsoft.com/snapshot/", date,"/web/packages/", x, "/index.html")
webpage <- read_html(url)
table <- html_nodes(webpage, xpath='//td')
html_text(table)[2]
}
sapply(pack_list, myfunc, date=date)
}
pack_list <- c("ggplot2", "abind")
date <- "2016-08-01"
pack_version(pack_list, date)
ggplot2 abind
"2.1.0" "1.4-5"
推荐阅读
- excel - 查找包含文件的文件夹 (VBA)
- continuous-integration - 为 xaml 文件构建管道
- c# - 在 C# 中将视图组件的结果作为字符串返回
- javascript - 无法使用 jQuery 选择 Angular Dropdown 值
- java - Android 数据绑定:多次调用自定义绑定适配器时,生成的代码中缺少返回语句
- python - 计算列中大于 x 但小于 y 的元素数
- c++ - C++:如何从 WLAN_BSS_ENTRY 打印 dot11Bssid?
- c# - 用于 ??如果对象不为空,则获取对象的属性
- matlab - 如何在 matlab 中证明 randperm() 是公平的
- c# - 将枚举属性名称与字符串匹配