今天发现一个好玩的。照例先放图。第一张是每年pubmed上收录的发表的文章数量。第二张则是基因组、代谢组等组学数据发表的数量。
这两张图的数据是通过R包
rentrez
获取的。
rentrez提供了一些利用NCBI提供的api来搜索、下载ncbi的数据的函数,方便用户与NCBI数据库交互。
安装和使用
install.packages(c("rentrez","reshape","ggplot2"))
library(rentrez)
papers_by_year function(years, search_term){
return(sapply(years, function(y) entrez_search(db="pubmed",term=search_term, mindate=y, maxdate=y, retmax=0)$count))
}
years 1990:2019
total_papers papers_by_year(years, "")
omics c("genomic", "epigenomic", "metagenomic", "proteomic", "transcriptomic","metabolomics","exposome", "pharmacogenomic", "connectomic")
trend_data sapply(omics, function(t) papers_by_year(years, t))
trend_props trend_data/total_papers
library(reshape)
library(ggplot2)
trend_df melt(data.frame(years, trend_data), id.vars="years")
p ggplot(trend_df, aes(years, value, colour=variable))
p + geom_line(size=1) + scale_y_log10("number of papers")
total_papers2
p
p + geom_line(size=1) + scale_y_log10("number of papers")
除此之外,这个包也可以用来下载NCBI的数据。包括下载序列等等。
更多使用可以参考:
-
CRAN-Introduction: The NCBI, entrez and rentrez. :https://cran.r-project.org/web/packages/rentrez/vignettes/rentrez_tutorial.html
-
github-ropensci/rentrez:https://github.com/ropensci/rentrez
此外,R包
gtrendsR
也可以用来获取类似的信息。(注:图片和代码来源于《Meta-Workflow》,作者Miao YU,书的网址:
https://yufree.github.io/metaworkflow/index.html
)
install.packages("gtrendsR"))
library(gtrendsR)
res gtrends(c("metabolomics", "metabolomics"), geo = c("CA","US"))
plot(res)
gtrendsr是基于google来检索和显示趋势信息,由于一些不足为外人道的原因,我们在使用的时候需要设置代理再使用:
library(gtrendsR)
setHandleParameters(user = "xxxx", password = "*******", domain = "mydomain", proxyhost = "10.111.124.113", proxyport = 8080)
res gtrends(c("metabolomics", "metabolomics"), geo = c("CA","US"))
plot(res)
rentrez的更多参考资料: