knitr chunk的资源

时间:2016-07-13 15:53:01

标签: r knitr sweave

我一直试图在网上找到这个,但没有运气。我正在使用knitr创建一个包含R的报告,并且想知道是否有人知道涉及<<>>=的所有选项的良好资源。我已经看过一些像<<setup, include=FALSE, cache=FALSE>>=这样的例子,但我不知道这些是什么意思,也想知道我还能做些什么。

1 个答案:

答案 0 :(得分:0)

让你关闭这个问题 - 一切都在这里:http://yihui.name/knitr/options/#chunk_options,我将粘贴下面最重要的(在我看来)选项:

代码评估

  • eval :( TRUE;逻辑)是否评估代码块;它也可以是一个数字向量来选择要评估的R表达式,例如, eval = c(1,3,4)或eval = - (4:5)

文字结果

  • echo :( TRUE;逻辑或数字)是否在输出文件中包含R源代码;除了完全打开/关闭源代码的TRUE / FALSE之外,我们还可以使用数字向量来选择在块中回显哪个R表达式,例如, echo = 2:3表示仅回显第2和第3个表达式,echo = -4表示排除第4个表达式
  • results :(&#39;标记&#39 ;;字符)采用这些可能的值
    • markup:使用输出挂钩标记结果,例如将结果放入特殊的LaTeX
    • asis:按原样输出,即将R中的原始结果写入输出文档
    • hold:抓住所有输出片并将它们推到块的末尾
    • hide隐藏结果;此选项仅适用于正常的R输出(不是警告,消息或错误)
  • collapse :( FALSE;逻辑;仅适用于Markdown输出)是否可以将所有源和输出块从一个代码块折叠到一个块中(默认情况下,它们被写入单独的块) <pre></pre>块)
  • warning :( TRUE;逻辑)是否在输出中保留警告(由warning()生成),就像我们在终端中运行R代码一样(如果为FALSE,所有警告都将在控制台中打印而不是输出文件);它还可以将数值作为索引来选择要包含在输出中的警告子集
  • error :( TRUE;逻辑)是否保留错误(来自stop());默认情况下,即使出现错误,评估也不会停止!!如果我们希望R停止错误,我们需要将此选项设置为FALSE message:(TRUE; logical)是否保留message()发出的消息(类似于警告)
  • include :( TRUE;逻辑)是否在最终输出文档中包含块输出;如果include = FALSE,则不会将任何内容写入输出文档,但如果块中有任何绘图,则仍然会评估代码并生成绘图文件,因此您可以手动插入数字;请注意,这是唯一未缓存的块选项,即更改它不会使缓存无效。

高速缓存

  • cache :( FALSE;逻辑)是否缓存代码块;在评估代码块时,会跳过缓存的块,但是在这些块中创建的对象是从先前保存的数据库(.rdb和.rdx)文件加载(延迟),并且在为第一个块评估块时保存这些文件时间,或者找不到缓存的文件(例如,您可能已经手动删除它们)

图解

  • fig.path :(&#39;图/&#39 ;;字符)前缀用于图形文件名(图。路径和块标签连接起来制作文件名);它可能包含一个像figure / prefix-这样的目录(如果它不存在则会被创建);此路径相对于当前工作目录
  • fig.widthfig.height :(均为7;数字)绘图的宽度和高度,将在图形设备中使用(以英寸为单位),且必须为数字
  • dev :(&#39; pdf&#39;用于LaTeX输出,&#39; png&#39;用于HTML / markdown;字符)函数名称,将用作记录的图形设备图

示例块:

```{r global_options, include = FALSE}
knitr::opts_chunk$set(fig.width = 9, fig.height = 4, fig.path = "Figs/", dev = "svg",
                      echo = FALSE, warning = FALSE, message = FALSE,
                      cache = FALSE, tidy = FALSE, size = "small")
```