【发布时间】:2018-04-21 18:59:52
【问题描述】:
我正在创建一个教程,其中涉及告诉读者将什么放入我们称为utils.R 的文件中。用户将获得作为 HTML 文件的教程。在整个教程中utils.R 发生变化,Rmd 文档使用utils.R 中的代码,因为它存在于教程的那个阶段。在渲染过程中,我希望代码块使用source("utils.R"),因为它存在于教程的那个阶段。我正在寻找一种方法...
1。将代码块的内容写入文件。比如……
```{r utils_1}
summary(cars)
median(cars$speed)
```
有没有办法将utils_1 中的代码写入文件?
2。从文本字符串创建格式良好的代码块(我知道如何将其写入文件)。比如……
z <- "summary(cars)\nmedian(cars$speed)"
write(z, "utils.R")
将生成utils.R,但有没有办法将z 转换为格式正确的代码块。
我可以创建多个版本的utils.R 并使用echo=F 隐藏我正在后台加载它,但这似乎很痛苦。
【问题讨论】:
-
你能包含一些最小的代码吗?我无法完全理解您要达到的目标。用户会在 RStudio 中逐块与此文件进行交互,还是希望他们编织整个文档并查看输出?
-
这应该有助于第二部分:stackoverflow.com/q/38818492/7347699
-
您仍然需要发布完整的代码。目前尚不清楚哪些代码将写入文件。因此,请发布一个完整的示例,展示您希望最终结果的样子,即使它不起作用,并且有人能够修复它以使其正常工作。
-
对于交互式内容,请考虑使用 Jupyter notebook 而不是 Rmd 文件。
标签: r r-markdown knitr