request - 使用来自 pubmedR 的 pmApiRequest 和 pmApi2df 检索到的不完整的隶属关系
问题描述
使用 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(感谢他):
# https://stackoverflow.com/questions/64103323/extracting-affiliation-information-from-pubmed-search-string-in-r/64109130#64109130
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)
推荐阅读
- reactjs - 如何在 react-bootstrap 导航栏中正确设置路由
- python - 构建一个能够以特定顺序运行一些任务的简单应用程序
- javascript - 根据另一个对象数组的属性值对数组进行排序
- php - pdomodel:只有 fech 1 行
- java - 从其他活动向 Handler 发送消息
- c - 为什么生成的解析器会出现语法错误?
- wordpress - 从我的虚拟主机下载 zip 文件
- django - 使用 post_save 信号更新用户配置文件问题。错误消息是用户在更新时已经存在
- javascript - json对象内的Javascript循环
- reactjs - 如何在另一个主组件中使用方法