前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言实现文献的批处理

R语言实现文献的批处理

作者头像
一粒沙
发布2020-09-01 14:46:15
1.9K0
发布2020-09-01 14:46:15
举报
文章被收录于专栏:R语言交流中心R语言交流中心

科研过程中难免会涉及大量文献的检索下载,还有信息的整合。我们今天给大家介绍一个可以获取文献相关信息甚至全文的R包。Rcrossref可以通过文献doi获得文献的相关信息,crminer可以基于链接直接下载原文,当然这个要看你所在网络的权限了。首先我们看下报道额安装:

代码语言:javascript
复制
install.packages("rcrossref")
install.packages("crminer")

接下来我们看下包中各函数的功能:

1. cr_cn获取各种参考文献形式

其中主要参数:

Format 指的输出的形式,包括:"rdf-xml","turtle", "citeproc-json", "citeproc-json-ish","text", "ris", "bibtex" (default),"crossref-xml", "datacite-xml","bibentry", or"crossref-tdm"。

Style 指的引文样式风格库,只要包含的都可以输出。

我们看下实例:

代码语言:javascript
复制
cat(cr_cn(dois ="10.1126/science.169.3946.635", format = "bibtex"))

2. cr_citation_count 获取文献的引用次数。我们直接看下实例:

代码语言:javascript
复制
cr_citation_count(doi="10.1371/journal.pone.0042793")

3. cr_agency获取doi 的生成机构。

代码语言:javascript
复制
cr_agency(dois = '10.13039/100000001')

4. cr_works 查看交叉引用的情况。实例:

代码语言:javascript
复制
cr_works(filter=c(has_orcid=TRUE,from_pub_date='2004-04-04'), limit=1)

5. cr_prefixes基于doi前缀搜索相应doi来源

代码语言:javascript
复制
cr_prefixes(prefixes=c('10.1016','10.1371','10.1023','10.4176','10.1093'))

以上是rcrossref中的主要功能,接下来我们看下在crminer中获取文献全文的功能:

1. crm_links 通过doi获取文章全文的链接,全文格式包括'xml', 'html', 'plain', 'pdf', 'unspecified', or 'all' (default)。实例:

代码语言:javascript
复制
crm_links(doi="10.1245/s10434-016-5211-6", "pdf")

2. as_tdmurl 创建一个crm_links项目。实例:

代码语言:javascript
复制
as_tdmurl("http://downloads.hindawi.com/journals/bmri/2014/201717.xml",  "xml")

3. crm_text 获取全文的文本数据。实例:

代码语言:javascript
复制
links=crm_links(doi="10.1245/s10434-016-5211-6", "pdf")
crm_text(url=links, type='pdf')

4. crm_pdf获取pdf文件。实例:

代码语言:javascript
复制
links <- crm_links(dois_pensoft[10],"all")
crm_pdf(links)

5. crm_xml 获取xml格式的文献。实例:

代码语言:javascript
复制
crm_xml(links)

6. crm_extract从pdf中抽取文本信息。实例:

代码语言:javascript
复制
path <-system.file("examples", "MairChamberlain2014RJournal.pdf",package = "crminer")
res <- crm_extract(path)

至此,我们只需要知道doi就可以获取文献的相关信息。当然此包存在一定的局限性,那就是预印版杂志的doi是无法获取相关信息的。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 R语言交流中心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档