使用 pApiRequest 和 pApi2df 从 pubmedR 检索到的不完整隶属关系

Incomplete affiliations retrieved with pmApiRequest and pmApi2df from pubmedR

使用 pubmedR 查找期刊的作者隶属关系时,我发现它们有时不完整。 下面是一个例子:

library(pubmedR)
journal <- "Advances in Clinical Chemistry[JO] AND 2021:2021[DP]"
article_count <- pmQueryTotalCount(query = journal, api_key = NULL)
article_count$total_count
# [1] 21
article_request <- pmApiRequest(query = journal, limit = article_count$total_count, api_key = NULL)
dfa <- pmApi2df(article_request, format = "bibliometrix")

在数据框 'dfa' 的隶属关系列 'C1' 或 'AF_UN' 中,我们可以观察到,例如对于第 2 行和第 3 行(PMID 34044912 和 34044911),尽管在相应的 Pubmed 隶属关系(分别为冰岛和沙特阿拉伯)中被很好地提及,但该国家/地区并未出现。 https://pubmed.ncbi.nlm.nih.gov/34044912/ https://pubmed.ncbi.nlm.nih.gov/34044911/

如何检索详尽的从属关系?

我最终找到的从 Pubmed 文章中检索详尽隶属关系的最佳方法是来自 ciakovx(感谢他):

# 
library(pubmedR)
library(purrr)
library(tidyr)

journal <- "Advances in Clinical Chemistry[JO] AND 2021:2021[DP]"
article_count <- pmQueryTotalCount(query = journal, api_key = NULL)
article_count$total_count
# [1] 21

article_request <- pmApiRequest(query = journal, limit = article_count$total_count, api_key = NULL)

dfa <- pluck(article_request, "data") %>% {
  tibble(
    pmid = map_chr(., pluck, "MedlineCitation", "PMID", "text"),
    journal = map(., pluck, "MedlineCitation", "Article", "Journal", "ISOAbbreviation"),
    pubdate = map(., pluck, "MedlineCitation", "Article", "Journal", "JournalIssue", "PubDate", "Year"),
    affiliation = map(., pluck, "MedlineCitation", "Article", "AuthorList", "Author", "AffiliationInfo", "Affiliation")
  )
}
dfa <- as.data.frame(dfa)