R - Markdown避免包加载消息

时间:2012-10-26 16:30:43

标签: r markdown knitr rstudio r-markdown

我一直在使用Knitr通过R-Studio,并认为它非常整洁。我有一个小问题。当我在R-Chunk中获取文件时,knitr输出包括如下外部注释:

+ FALSE Loading required package: ggplot2
+ FALSE Loading required package: gridExtra
+ FALSE Loading required package: grid
+ FALSE Loading required package: VGAM
+ FALSE Loading required package: splines
+ FALSE Loading required package: stats4
+ FALSE Attaching package: 'VGAM'
+ FALSE The following object(s) are masked from 'package:stats4':

我试图以各种方式设置R-chunk选项,但似乎仍然没有避免这个问题:

```{r echo=FALSE, cache=FALSE, results=FALSE, warning=FALSE, comment=FALSE, warning=FALSE} 
source("C:/Rscripts/source.R");

```

有没有办法评论这些消息?

4 个答案:

答案 0 :(得分:230)

您可以使用include=FALSE排除大块中的所有内容。

```{r include=FALSE}
source("C:/Rscripts/source.R")
```

如果您只想取消消息,请改用message=FALSE

```{r message=FALSE}
source("C:/Rscripts/source.R")
```

答案 1 :(得分:85)

```{r results='hide', message=FALSE, warning=FALSE}
library(RJSONIO)
library(AnotherPackage)
```

请参阅Knitr文档中的Chunk Options

答案 2 :(得分:6)

我对R Markdown的最佳解决方案是创建一个代码块,仅用于加载库并排除块中的所有内容。

{r results='asis', echo=FALSE, include=FALSE,}
knitr::opts_chunk$set(echo = TRUE, warning=FALSE)
#formating tables
library(xtable)

#data wrangling
library(dplyr)

#text processing
library(stringi)

答案 3 :(得分:3)

这是一个老问题,但这是另一种方法。

您可以通过将source调用包裹在suppressPackageStartupMessages()suppressMessages()和/或suppressWarnings()中来修改R代码本身而不是块选项。 E.g:

```{r echo=FALSE}
suppressWarnings(suppressMessages(suppressPackageStartupMessages({
source("C:/Rscripts/source.R")
})
```

您还可以将这些功能放在library()脚本中的"source.R"来电。