是否可以从 R 中获取 CRAN 包的发布日期?我想获取 k 个最近发布的 CRAN 软件包的列表,或者获取 dd-mm-yy 日期之后发布的所有软件包的列表。类似于上面的信息available_packages_by_date.html http://cran.r-project.org/web/packages/available_packages_by_date.html?
available.packages() 命令有一个“fields”参数,但这仅从描述中提取字段。包裹描述上的日期字段并不总是最新的。
我可以用智能正则表达式从html页面 http://cran.r-project.org/web/packages/available_packages_by_date.html,但我不确定这个 html 文件有多可靠和最新......在某些时候,Kurt 可能决定对布局进行改造,这会破坏脚本。另一种方法是使用时间戳CRAN FTP ftp://cran.r-project.org/pub/R/src/contrib/但我也不确定这个解决方案有多好。我不确定是否有某个带有发布日期的正式结构化文件?我假设 HTML 页面是从某些数据库自动生成的。
结果发现有一个未记录的文件“packages.rds”,其中包含所有包的发布日期(而不是时间)。我想这些数据每天都会被用来重新创建 HTML 文件。
下面是一个从该文件中提取发布日期的简单函数:
recent.packages.rds <- function(){
mytemp <- tempfile();
download.file("http://cran.r-project.org/web/packages/packages.rds", mytemp);
mydata <- as.data.frame(readRDS(mytemp), row.names=NA);
mydata$Published <- as.Date(mydata[["Published"]]);
#sort and get the fields you like:
mydata <- mydata[order(mydata$Published),c("Package", "Version", "Published")];
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)