r - 具有完整作者的出版物列表的语法
问题描述
我正在使用 Vitae 包来构建我的简历,并发现它非常有用。但是我无法从网络上提取我的出版物列表。当作者列表很长时,学者包返回不完整的作者列表,并且我使用 get_complete_authors 命令来纠正它没有成功。我需要在数据框中完整的作者列表,以便我可以将它与简历结构一起使用。rorcid 包看起来很棒,但对于像我这样的新手来说却相当神秘(看起来它使用了某种嵌套列表,这有点可怕)!有人可以分享从 orcid 中提取出版历史的语法吗?最好有合适的语法,我可以用我自己的 orcID 来适应我的工作!或者,从具有完整作者列表的学者那里提取出版历史的语法也可以使用。
解决方案
Google Scholar 允许您将自己的引文导出到 bibtex 文件。从您自己的个人资料页面,您可以选择任何/所有引用并使用“导出”选项生成适当的.bib
文件。.bib
然后可以使用此文件vitae::bibliography_entries()
将引文添加到您的简历中。
https://scholar.google.com/intl/en/scholar/citations.html#questions
使用该scholar
软件包可以帮助实现这一点的自动化,但正如您所经历的那样,它有局限性。这主要是因为 Google 没有向 Google Scholar 提供 API,因此该程序包会从搜索结果中抓取数据。下面的代码将使用完整的列表替换不完整的作者scholar::get_complete_authors()
,但是如果您有许多作者的引用,您将遇到速率限制问题。
scholar_id <- "<YOUR ID>"
library(dplyr)
library(stringr)
library(scholar)
pubs <- scholar::get_publications(id = scholar_id)
pubs %>%
rowwise() %>%
mutate(
author = case_when(
str_ends(author, "\\.\\.\\.") ~ get_complete_authors(id = scholar_id, pubid = pubid),
TRUE ~ author
)
)
要从 ORCID 获取出版物,您可以使用该rorcid::orcid_citations()
函数。默认情况下,它将以 bibtex 格式提供引文,可以保存和使用:
pubs <- rorcid::orcid_citations("0000-0002-2140-5352")
writeLines(pubs$citation, "publications.bib")
bibliography_entries("publications.bib")
推荐阅读
- r - 如何为缺失数据插入新行,其间隔可能在 R 中变化几分钟
- python - Django 模型字符串表示
- php - 使用作曲家时如何从供应商文件夹中调用一个类?
- windows - 在 vscode 终端中运行 octave-cli
- c# - 具有多个类构造函数的 C# Json 反序列化
- javascript - 可恢复块上传
- echarts - 如何使用 ECharts 的格式化程序来指定国际数字格式?
- pyspark - Pyspark从数据框中的整数中删除逗号
- amazon-web-services - 环境变量 ElasticBeanstalk 多容器
- express - 努力正确使用 Axios 异步调用的函数的返回值