R - Markdown tránh tải tin nhắn gói


197

Tôi đã sử dụng Đan qua R-Studio và nghĩ rằng nó khá gọn gàng. Tôi có một vấn đề nhỏ mặc dù. Khi tôi lấy một tệp trong R-Chunk, đầu ra của đan bao gồm các nhận xét bên ngoài như sau:

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

Tôi đã cố gắng thiết lập các tùy chọn R-chunk theo nhiều cách khác nhau nhưng dường như vẫn không tránh được vấn đề:

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

```

Có cách nào để bình luận ra những tin nhắn này?


2
thiết lập options(warn=-1)và trở lại options(warn=0)vào cuối Rmd. Chăm sóc tất cả các tin nhắn gói khởi động. Lưu ý rằng bạn sẽ tắt cảnh báo, nhưng chỉ khi Rmd được hiển thị.
Dan Kalleward

Câu trả lời:


268

Bạn có thể sử dụng include=FALSEđể loại trừ mọi thứ trong một đoạn.

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

Nếu bạn chỉ muốn chặn tin nhắn, hãy sử dụng message=FALSEthay thế:

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

Thực tế là resultskhông thể FALSE. Tôi thà tùy chọn đoạn resultsđược chia thành results, holdmarkupđó tất cả sẽ là giá trị boolean. Than ôi, đây không phải là cách nó hoạt động.
Đầu

1
Điều gì xảy ra nếu chúng ta muốn tắt tin nhắn trên toàn cầu cho TẤT CẢ các khối, làm thế nào để bạn làm điều đó?
Prasad Chalasani

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

1
@Head resultscó thể FALSE(là bí danh của results="hide") kể từ đan 1.16: github.com/yihui/knitr/issues/1360
Yihui Xie

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

xem Tùy chọn Chunk trong tài liệu Đan


12
Các warning=FALSElà điều duy nhất mà làm việc cho tôi. Chắc chắn là cách tốt nhất để đưa chunk vào đầu ra của bạn mà không có những cảnh báo xấu xí!
Alex P. Miller

Làm thế nào để thiết lập điều này cho toàn bộ tài liệu?. Tôi có phải đặt nó vào từng khối bằng tay không?.
Fadwa

3
@Misaki Xem nhận xét của Yihui ở trên liên quan đến đanr :: opts_chunk $ set (message = FALSE)
cbare

7

Giải pháp tốt nhất của tôi trên R Markdown là chỉ tạo một đoạn mã để tải các thư viện và loại trừ mọi thứ trong khối.

{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

Đây là một câu hỏi cũ, nhưng đây là một cách khác để làm điều đó.

Bạn có thể thay đổi mã R bản thân thay vì các tùy chọn đoạn, bằng cách gói sourcegọi trong suppressPackageStartupMessages(), suppressMessages()và / hoặc suppressWarnings(). Ví dụ:

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

Bạn cũng có thể đặt các chức năng đó xung quanh các library()cuộc gọi của mình bên trong "source.R"tập lệnh.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.