【发布时间】:2019-08-05 17:52:30
【问题描述】:
我定期分析调查结果并喜欢使用 Rmarkdown,以便我可以对结果进行漂亮的 HTML 输出。
调查可能有很多问题(比如 40 个),因此创建 40 个代码块,以及高度重复的代码和标题可能会很烦人。我认为,我可以通过 R 中的循环轻松地做到这一点。但是,我只是坚持如何结合这两个过程!
这很接近—— how to create a loop that includes both a code chunk and text with knitr in R
但最终,它只是一个循环,而且不是很灵活。因此,我无法在问题 22(或其他)中添加数字。
### Question 1
#### `r key$Question_Text[key$Question=="Q1"][1]`
```{r chunk1}
quest <- "Q1"
# code for question 1
```
### Question 2
#### `r key$Question_Text[key$Question=="Q2"][1]`
```{r chunk2}
quest <- "Q2"
# Identical code for question 2
```
....and so on....
### Question 35
#### `r key$Question_Text[key$Question=="Q35"][1]`
```{r chunk35}
quest <- "Q35"
# Identical code for question 35
```
因为有时,一个问题有一个特殊类型的图形或调整,我希望输出是我可以粘贴到 RMD 并在那里进行所有更改的东西。我只是想尽可能多地跳过...通过使所有无聊的相同步骤完全自动化。
【问题讨论】:
-
我认为您可以使用
knit_expandfunction 做到这一点。 -
我想不出一种方法来使用 knit_expand,而不必再次输入所有内容,但也许我只是缺乏创造力。
标签: r r-markdown repeat