Варианты сортировки для поиска Pubmed eutils?

Я использую BioPython для запроса базы данных Pubmed через API eutils. Конечная точка esearch имеет параметр сортировки, но в документации по API не перечислены все параметры для этого значения.

http://www.ncbi.nlm.nih.gov/books/NBK25499/#_chapter4_ESearch_

Пример вызова:

Entrez.esearch(db="pubmed", term=search_term, rettype=rettype, retmax=retmax,
               sort=sort_method)

Ценности, которые я знаю, работают для sort_method:

  • 'свидание в пабе'
  • 'актуальность'
  • 'первый автор'
  • 'последний автор'
  • 'заглавие'
  • 'журнал'

Однако я не уверен, как указать порядок сортировки по умолчанию, то есть «Самые последние»; на практике это, кажется, отсортировано по значению идентификатора Pubmed. 'recent', 'самый последний', 'pmid', 'id' и 'default' - все дают OutputMessage "Неизвестная схема сортировки...".

Кто-нибудь еще знает, как явно указать порядок по умолчанию?


person Adam Carroll    schedule 21.11.2015    source источник
comment
Можете ли вы сортировать с помощью Best Match ?   -  person Onkar Musale    schedule 08.01.2020


Ответы (2)


Не уверен на 100%, правильно ли я понял ваш вопрос. Если вы не укажете порядок сортировки, будет использоваться порядок сортировки по умолчанию.

handle = Entrez.esearch(db="pubmed", term='TRPV1')
records = Entrez.read(handle)
print('\n'.join(records['IdList']))

предоставит вам идентификаторы в том же порядке, что и на веб-странице PubMed.

person Maximilian Peters    schedule 17.06.2016
comment
Есть ли у вас какие-либо идеи о сортировке результатов по лучшему совпадению, как они это делают на своем сайте.. здесь -> ncbi.nlm.nih.gov/pubmed/?term=dengue - person Onkar Musale; 08.01.2020
comment
@Онкар Мусале: попробуйте добавить sort='relevance' - person Maximilian Peters; 08.01.2020
comment
Но когда я использую sort='relevance', это дает разные результаты по сравнению с результатами, которые я получаю на их сайте. - person Onkar Musale; 09.01.2020

Это sort='relevance'. Если вы перейдете на сайт PubMed и укажете sort=relevance в URL-адресе: https://pubmed.ncbi.nlm.nih.gov/?term=dengue&sort=relevance&size=200 будет использоваться Best Match, как показано на сайте. Когда вы используете sort=pubdate или sort=date, это будет дата публикации и самая последняя соответственно.

person jimh    schedule 14.07.2020