R-マークダウンでパッケージの読み込みメッセージを回避


197

私はR-Studioを介してKnitrを使用してきましたが、それはかなりすっきりしていると思います。ちょっとした問題があります。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チャンクオプションを設定しようとしましたが、それでも問題を回避できなかったようです。

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

```

これらのメッセージをコメントアウトする方法はありますか?


2
Rmdの最後に設定options(warn=-1)して戻りoptions(warn=0)ます。すべてのスタートアップパッケージメッセージを処理します。警告をオフにすることに注意してください。ただし、Rmdがレンダリングされている間のみです。
Dan Kalleward 2017年

回答:


268

include=FALSEチャンク内のすべてを除外するために使用できます。

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

メッセージを抑制するだけの場合は、message=FALSE代わりに次を使用します。

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

実際resultsにはできませんがFALSE残念です。私はむしろチャンクオプションが考えresultsに分割されresultsholdおよびmarkupこれは、すべてのブール値になります。悲しいかな、これはそれがどのように機能するかではありません。
ヘッド

1
すべてのチャンクに対してメッセージをグローバルにオフにしたい場合はどうすればよいですか?
Prasad Chalasani、2015年

13
@PrasadChalasani knitr::opts_chunk$set(message = FALSE) yihui.name/knitr/options
Xie

1
@Head resultsFALSE(のエイリアスですresults="hide"knitr 1.16 以降である可能性があります:github.com/yihui/knitr/issues/1360
Xie

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

Knitrのドキュメントのチャンクオプションを参照してください


12
warning=FALSE私のために働いたのはそれだけです。醜い警告なしで出力にチャンクを含めるための間違いなく最良の方法!
Alex P. Miller

これをドキュメント全体に設定する方法は?手動で各チャンクに配置する必要がありますか?
Fadwa

3
@Misaki knitr :: opts_chunk $ set(message = FALSE)に関する上記のYihuiのコメントを参照してください
cbare

7

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)

6

これは古い質問ですが、これを行う別の方法があります。

あなたはラップすることによって、Rコード自体の代わりに、チャンクのオプションを変更することができますsourceにコールをsuppressPackageStartupMessages()suppressMessages()および/またはsuppressWarnings()。例えば:

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

スクリプトlibrary()内の呼び出しの周りにこれらの関数を配置することもでき"source.R"ます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.