Похоже, вы идете по пути использования одинарных кавычек для обозначения исполняемого кода R в заголовке YAML, но, похоже, ничего из того, что я пробовал, не работает.Это может быть невозможно ...
Вместо того, чтобы пытаться выполнить выражение, которое ссылается на каждый файл .bib
в заголовке YAML, почему бы не создать новую объединенную библиографию.
Для создания объединенной библиографии вы можете использовать пакет bib2df .
Попробуйте следующий код:
# Load the bib2df library.
library(bib2df)
# Set path to .bib files.
bib_path <- paste0(getwd(),"/bib")
# Create vector of all .bib files.
bib_refs <- list.files(path=bib_path,pattern = ".bib")
# Create an empty list for storing bib data frames.
bibs_list <- list()
# Loop through bib_refs and store as df in bibs_list
for (i in 1:length(bib_refs)){
ref_path <- paste0(bib_path,"/",bib_refs[i])
bibs_list[[i]] <- bib2df(ref_path)
}
# bind dfs in list.
bibs_df <- do.call(rbind,bibs_list)
# Create new merged bibliography
df2bib(bibs_df, file = paste0(bib_path,"/","bibliography.bib"))
Теперь вам, вероятно, потребуется указать путь к вашим .bib
файлам, который отличается от вашего рабочего каталога, в котором вы рендеринг .R илиФайл .Rmd.Для этого я изменил свой заголовок YAML, чтобы он выглядел так:
bibliography: D:\\Documents\\R\\StackOverflow\\bib\\bibliography.bib