首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按相关性对rentrez中的发布搜索进行排序

按相关性对rentrez中的发布搜索进行排序
EN

Stack Overflow用户
提问于 2016-07-04 10:10:09
回答 2查看 418关注 0票数 4

我使用R中的rentrez包搜索PubMed,并希望得到按相关性排序的结果。目前,它们是按发布日期排序的。

代码语言:javascript
复制
library(rentrez)

query = 'regression to the mean[TITL]'
entrez_search = entrez_search(db="pubmed", term=query, retmax=30)
paper_data = entrez_summary(db="pubmed", id=entrez_search$ids)
dates = extract_from_esummary(paper_data, c("pubdate"))
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-01 03:28:10

据我所知,“相关性”信息与给定的搜索(而不是稍后可能下载的记录摘要或完整记录)相关联,也没有分数或类似的说法说,在请求搜索返回的数据中,给定的搜索结果有多相关。

另一方面,我认为sort=relevance的论点起到了作用。如果将相同的搜索发送两次,则in的顺序相同:

代码语言:javascript
复制
default_search = entrez_search(db="pubmed", term=query, retmax=30)
default_search_again = entrez_search(db="pubmed", term=query, retmax=30)
all(default_search$ids == default_search_again$ids)

代码语言:javascript
复制
[1] TRUE

而将订单设置为relevance会更改顺序:

代码语言:javascript
复制
rel_search = entrez_search(db="pubmed", term=query, retmax=30, sort="relevance")
default_search$ids == rel_search$ids

代码语言:javascript
复制
 [1]  TRUE  TRUE  TRUE  TRUE FALSE FALSE  TRUE FALSE FALSE  TRUE FALSE FALSE
[13] FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE  TRUE  TRUE  TRUE  TRUE
[25] FALSE FALSE  TRUE  TRUE FALSE FALSE

稍后对摘要、提取和链接函数的调用应该保持此顺序,因此这可能是最简单的(仅?)跟踪相关信息的方法?

票数 3
EN

Stack Overflow用户

发布于 2016-07-04 10:57:02

extract_from_esummary用于paper_data口香糖,并调用选定的参数。在你的例子中,它是pubdate

当您检查paper_data的结构时,例如通过使用str(paper_data),您将注意到可以作为extract_from_esummary的第二个参数的元素,例如通过ISSN进行排序:

代码语言:javascript
复制
issn <- extract_from_esummary(paper_data, c("issn"))

对你来说不幸的是,我看不出任何类似相关的东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38182072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档