我找到了一个非常好的技巧(link)到knitr的一个函数,你可以将你的输出html保存到一个输出文件夹和不同的文件名下。
您必须前往标题的唯一内容如下:
title: "analysis"
author: "Me"
date: "`r format(Sys.time(), '%d %B, %Y, %H:%M')`"
knit: (function(inputFile, encoding) {
rmarkdown::render(inputFile,
encoding=encoding,
output_file=file.path(dirname(inputFile), out_dir, 'analysis.html')) })
output:
html_document:
number_sections: yes
toc: yes
这在我的Mac上运行'有时'非常好,但有时找到out_dir变量有问题...
我首先考虑先执行块,然后设置变量......但这并没有解决问题......
我也重启了R会话,这没有帮助。
最后一步是关闭R,保存工作区,重新打开R并加载工作区后,它再次像魅力一样。
我找不到原帖,有人推荐这个技巧......
重新制作工作流程
打开新项目,将其命名为测试新文件夹
创建一个降价文件
将标题更改为:
---
title: "Untitled"
author: "Me"
date: "`r format(Sys.time(), '%d %B, %Y, %H:%M')`"
knit: (function(inputFile, encoding) {
rmarkdown::render(inputFile,
encoding=encoding,
output_file=file.path(dirname(inputFile), out_dir, 'analysis.html')) })
output:
html_document:
number_sections: yes
toc: yes
---
```{r write quant output files}
out_dir <- 'test'
if(!file.exists(out_dir)) {
dir.create(out_dir)
}
```
将文档保存为test.Rmd
单击编织按钮(现在从按钮的选项中删除html)
这将失败!
关闭项目!
点击保存环境!
打开项目并单击编织!
一切正常。
执行rm(list = ls())之后一切都可以工作
答案 0 :(得分:11)
您可以尝试在要提供的out_dir
函数中设置knit
变量:
knit: (function(inputFile, encoding) {
out_dir <- 'test';
rmarkdown::render(inputFile,
encoding=encoding,
output_file=file.path(dirname(inputFile), out_dir, 'analysis.html')) })