R学习使用中,我们经常需要使用各种分析神器——package包。各种包的使用,不仅加快了数据分析的速度,也将某些不可能变成可能。那么,在海量第三方应用中,如何找到我们最需要、其他人最常用的包,则是数据顺利分析的关键。
为此,我在这里介绍一类新式基于R平台的包pkgsearch,专门用于查询其他包,使用文本挖掘技术搜索所有CRAN。查询结果按照评分以此排列,并给出每个包的下载量等信息,方便使用者参考,所谓用的最多的就是最好的。
以下举例说明pkgsearch的使用方法:
如我们需要查询有关机器学习的R语言分析包,搜索关键词为machine learning。
library(pkgsearch)
keywords <- 'machine learning'
pkg_search(keywords, format = "short")
输出结果如下:
- "machine learning" ----------------------------------- 505 packages in 0.022 seconds -
# package version by @ title
1 100 kernlab 0.9.27 Alexandros Karatzoglou 8M Kernel-Based Machine Learning...
2 86 mlbench 2.1.1 Friedrich Leisch 7y Machine Learning Benchmark Pr...
3 52 mlr 2.13 Bernd Bischl 7M Machine Learning in R
4 32 ParamHelpers 1.12 Jakob Richter 2M Helpers for Parameters in Bla...
5 32 Metrics 0.1.4 Michael Frasco 9M Evaluation Metrics for Machin...
6 24 DALEX 0.2.7 Przemyslaw Biecek 21d Descriptive mAchine Learning ...
7 18 MLmetrics 1.1.1 Yachen Yan 3y Machine Learning Evaluation M...
8 16 mallet 1.0 David Mimno 6y A wrapper around the Java mac...
9 15 sigmoid 0.3.0 Bastiaan Quast 9M Sigmoid Functions for Machine...
10 13 mlf 1.2.1 Kyle Peterson 9M Machine Learning Foundations
默认给出了排名前10个与machine learning有关的包的信息,包括名称,版本号,开发者,发行时间,大致功能等。
为了获知各包的评分,下载量,注释信息等,我们可使用以下代码并将搜寻结果进行保存。
library(pkgsearch)
keywords <- 'machine learning'
# 列出前500个包
search_result <- pkg_search(keywords, format = "short", size = 500)
search_result <- as.data.frame(search_result)
search_result <- search_result[,c("package","title", "score", "downloads_last_month", "date")]
根据查找结果,我们知道mlr与kernlab应该是机器学习在R中关键包。