更新:似乎我的问题实际上与 this question 非常接近
根据该线程,目前没有“简单”的解决方案。然而,这个问题现在已经有一年多了,而且时间可能已经改变了(可以希望!)。
我原来的问题如下:
我在想我需要某种机制来重新排序文本和或R
文档中的 block ,因为它正在被编织。我想要做的是在我进入任何 R
之前,先写一个带有摘要和摘要的“文章”样式文档。代码,但包含“前向”-对将在 R
中计算的事物的引用代码。
所以我一开始的执行摘要可能是
我们发现 x 和 y 之间存在 `r final_correlation/100`% 相关性...
但是当我完成可重复研究的所有步骤时,将在文档的后端计算“final_correlation”。
事实上,当我阅读有关可重复研究的内容时,我经常看到这样的评论,即文档通常可以在编程序列之外更好地呈现。
我相信在其他有文化的编程框架中,这些 block 可以被纠缠成与它们呈现的顺序不同的顺序。我怎样才能在 knitr
中实现这一点? ?或者我可以采用其他一些完全不同的工作流程或模式来实现我想要的结果?
最佳答案
目前无法定义评估 knitr 中所有代码块的顺序。我能想到的一个想法是在文章的末尾写摘要,并在开头包含它。一份大纲:
在
article.Rmd
:Title.
Author.
Abstract.
```{r echo=FALSE, results='asis'}
if (file.exists('abstract.md')) {
cat(readLines('abstract.md'), sep = '\n')
} else {
cat('Abstract not ready yet.')
}
```
More code chunks.
```{r}
x <- 1:10
y <- rnorm(10)
final_correlation <- cor(x, y)
```
Body.
```{r include=FALSE}
knitr::knit('abstract.Rmd') # generates abstract.md
```
在
abstract.Rmd
:We found a `r final_correlation/100`% correlation between x and y...
关于r - 如何用尚未计算的抽象引用数据写一篇文章?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26246279/