web-dev-qa-db-fra.com

R - Markdown en évitant les messages de chargement de paquet

J'utilise Knitr via R-Studio et je pense que c'est assez chouette. J'ai un problème mineur cependant. Lorsque je source un fichier dans un R-Chunk, la sortie knitr inclut des commentaires externes, comme suit:

+ 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':

J'ai essayé de définir les options de R-chunk de différentes manières, mais je ne semblais toujours pas éviter le problème:

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

```

Est-il possible de commenter ces messages?

180
Roark

Vous pouvez utiliser include=FALSE pour tout exclure d'un bloc.

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

Si vous souhaitez uniquement supprimer les messages, utilisez plutôt message=FALSE:

```{r message=FALSE}
source("C:/Rscripts/source.R")
```
244
Yihui Xie
```{r results='hide', message=FALSE, warning=FALSE}
library(RJSONIO)
library(AnotherPackage)
```

voir Options de morceaux dans la documentation Knitr

91
cbare

Ma meilleure solution sur R Markdown était de créer un bloc de code uniquement pour charger des bibliothèques et exclure tout le contenu du bloc.

{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
Paul Tyler

C'est une vieille question, mais voici une autre façon de le faire.

Vous pouvez modifier le code R lui-même au lieu des options de bloc en encapsulant l'appel source dans suppressPackageStartupMessages(), suppressMessages() et/ou suppressWarnings(). Par exemple:

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

Vous pouvez également placer ces fonctions autour de vos appels library() dans le script "source.R".

4
shadowtalker