knitr:延迟执行块

时间:2014-12-18 20:43:50

标签: r knitr

我有一个Rmd文件,其中包含一些函数及其描述,以及一些函数的示例 由于示例逻辑上必须遵循它们相关的函数,因此它们的执行应该相对于它们的函数源而延迟。

test.Rmd文件可以如下绘制:

Function f
----------

The function f blah ....    

```{r f.code, eval=!delay}
f=function() g() # depends on g
```

f example
---------

Use f as follows:

```{r f.demo, eval=delay}
f()
```

Function g
----------

The function g blah ....

```{r g.code, eval=!delay}
g=function() return(1) 
```

delay标签(用于函数示例)表示应在函数之后执行块。

我用这个函数编织:

knit2=function(file){
  require(knitr); require(rmarkdown)
  delay=FALSE
  knit(file)
  delay=TRUE
  knit(file)
  render(file, "html_document")
}
```

knit2('test.Rmd')

由于我不是编织专家,我想知道这是否适合遵循。

0 个答案:

没有答案