科研动态

R markdown 常用设置

1.knitr::opts_chunk$set() 全局设定,“()”内加入参数就可以对整篇报告进行设置

2.如果希望代码用R的大于号提示符开始, 用选项prompt=TRUE。 如果希望结果不用井号保护, 使用选项comment=''。

3.tidy=TRUE可以自动重新排列代码段, 使得代码段格式更符合规范.

4.collapse=TRUE:一个代码块的代码、输出通常被分解为多个原样文本块中, 如果一个代码块希望所有的代码、输出都写到同一个原样文本块中, 加选项collapse=TRUE。

5.child='文件名.Rmd'可以调入另一个.Rmd文件的内容。如果有多个.Rmd文件依赖于相同的代码,可以用这样的方法。

6.echo = TRUE 同时显示代码块 + 结果。
echo = FALSE 不显示代码块,但显示结果。禁止代码出现在最终报告中,但不会禁止结果。为不想看到 R 代码的人 们编写报告时,就可以使用这个选项。

7.eval=FALSE, #可以使得代码仅显示而不实际运行。 这样的代码段如果有名字, 可以在后续代码段中被引用。

8.include=FALSE,可以运行代码,但不会在最终文档中显示代码和结果。如果不想让 setup 代码出现在报告中,就可以使用这个选项。

9.message = FALSE或warning = FALSE可以防止消息或警告出现在最终报告中。

10.results = 'hide'可以隐藏文本输出;fig.show = 'hide'可以隐藏图形输出。

11.error = TRUE在代码出现错误时仍然可以生成最终报告。在报告的最终版中,我们很少需要包括出错信息,但在调试 .Rmd 文件时,出错信息是非常有用的。如果使用 R 进行 教学活动,并特意想要包括出错信息的话,这个选项是非常有用的。如果使用默认设置 error = FALSE,那么即使只有一个错误,文档生成也会失败。

12.当R Markdown文章比较长,包含的R代码比较多, 或者代码段运行需要比较长时间时,反复编译整篇文章会造成不必要的计算,因为有些代码段并没有修改,依赖的数据也没有改变。 knitr提供了缓存功能, 代码段选项cache=TRUE对代码段打开缓存,允许暂存上次运行的结果(包括文本结果和图形)而不需要重复运行代码段。当代码段被修改时,缓存被放弃,编译时重新运行代码段。

13.缓存这种功能需要慎重使用,免得错误地使用了旧的结果。当后面的代码段需要使用前面代码段结果时,如果前面结果改了,后面的代码段就不能使用缓存的结果而必须重新计算。 为此, 在后面的代码段中应该加上dependson=选项,比如dependson=c('codeA', 'codeB'),其中codeA和codeB是前面的代码段的标签, 其结果会用在本代码段中。也可以使用代码段选项autodep=TRUE,knitr试图自动确定前后代码段之间的依赖关系,每当前面的代码段改变时, 后面的用到其结果代码段也自动重新计算而不使用缓存的旧结果。建议仅对计算一次需要较长时间的代码段使用缓存功能,后面依赖于其结果的代码一定要加上dependson=选项。因为缓存策略会逐渐变得复杂,所以应该定期使用 knitr::clean_cache()命令清除所有 缓存。

14.如果更喜欢用表格来显示数据,那么你可以使用knitr::kable函数

15.使用 out.width 控制输出图形的大小,并将其设置为行宽的百分比。默认设置为out.width = "70%"和fig.align = "center"。这种设置图形既不会占用过多空间,也不会显得太拥挤。如果想要让所有图形中的字体都保持一致大小,那么只要设置了 out.width,就同时还需要调整 fig.width,使其与默认 out.width 保持同样的比例。例如,如果默认fig.width为 6,out.width为 0.7,那么当设置out.width = "50%"时,你需要同时将fig.width 设置为 4.3(6*0.5/0.7)。

作者:小梦游仙境
链接:https://www.jianshu.com/p/6e922e9cda54
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

(0)

热评文章

发表评论