You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R Markdown中无需正文引用,在两个标题下插入独立参考文献列表

可行解决方案

方案1:使用biblatex(适配PDF输出场景)

  1. 首先修改R Markdown的YAML头部配置,移除原有的bibliography、csl、nocite配置,替换为以下内容:
---
title: "你的文档标题"
output: 
  pdf_document:
    citation_package: biblatex
biblatexoptions:
  - backend = biber
  - style = vancouver
bib-files:
  - "bib1.bib"
  - "bib2.bib"
---
  1. 在正文对应位置分别插入参考文献输出代码:
# Peer-reviewed publications
\nocite{*}
\printbibliography[files=bib1.bib, heading=none]

# Other publications
\nocite{*}
\printbibliography[files=bib2.bib, heading=none]

注意:该方案依赖biber后端,常规的TeX发行版(如TinyTeX、MiKTeX)均默认自带该组件。

方案2:使用RefManageR包(适配HTML/Word/PDF全输出场景)

  1. 先安装依赖包:运行install.packages("RefManageR")完成安装,同时移除YAML中原有bibliography、csl、nocite配置。
  2. 在文档开头插入初始化代码块:
```{r setup, include=FALSE}
library(RefManageR)
# 读取两个参考文献库
bib1 <- ReadBib("bib1.bib", check = FALSE)
bib2 <- ReadBib("bib2.bib", check = FALSE)
# 配置vancouver格式输出
BibOptions(style = "vancouver", first.inits = TRUE, no.print.fields = c("doi", "url", "isbn", "issn"))
3. 在对应标题下插入文献输出代码块:
Peer-reviewed publications
NoCite(bib1, "*")
PrintBibliography(bib1, .opts = list(return.ind = FALSE))
Other publications
NoCite(bib2, "*")
PrintBibliography(bib2, .opts = list(return.ind = FALSE))
- 两种方案均不会在正文内生成引用标记,所有文献会自动全量展示在对应分类标题下。
- 方案2不需要额外配置LaTeX环境,兼容性更强。

内容的提问来源于stack exchange,提问作者vlangen
相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 14:54:04