如何在R Markdown

时间:2017-12-22 13:48:46

标签: html r hyperlink r-markdown

我有一个循环,它产生许多不同的HTML R Markdown,它们具有相同的变量但结果不同(基于单个.Rmd)。

我想插入一个外部网站的超链接,其中唯一改变的是我正在处理的每个主题的名称。为此,需要有能够在整个循环中改变的东西。然而,R Markdown的链接结构只允许直接链接。

呈现文件的循环脚本:

names <- c(name1, name2, name3)

for (name in names){
  rmarkdown::render('document.Rmd',
                    output_file =  paste("document", name, ".html", sep=''))
}

对于 documentname1.html ,后面的超链接代码为:

[External Website](http://website.com/name1.html)

对于 documentname2.html ,后面的超链接代码为:

[External Website](http://website.com/name2.html)

等等。

如何创建URL引用我的Rmd基本文件中的对象的链接结构,或者是否有替代方法,例如可用于此情况的HTML语法?

1 个答案:

答案 0 :(得分:1)

sed

的直截了当的方式
library(rmarkdown)
for(name in names) {
    system(paste0("sed \'s/MYNAME/", name, "/g\' ", "document.Rmd > foo.Rmd"))
    render("foo.Rmd", output_file =  paste0("document", name, ".html"))
    unlink("foo.Rmd")
}

在您的参考document.Rmd中有[External Website](http://website.com/MYNAME.html),并在每次迭代中使用MYNAMEname替换为sed