當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R warnings 打印警告消息


R語言 warnings 位於 base 包(package)。

說明

warnings 及其print 方法以令人滿意的形式打印變量last.warning

用法

warnings(...)

## S3 method for class 'warnings'
summary(object, ...)

## S3 method for class 'warnings'
print(x, tags,
      header = ngettext(n, "Warning message:\n", "Warning messages:\n"),
      ...)
## S3 method for class 'summary.warnings'
print(x, ...)

參數

...

要傳遞給 cat 的參數(對於 warnings() )。

object

warnings() 返回的 "warnings" 對象。

x

"warnings""summary.warnings" 對象。

tags

如果不是 missing ,則將與 x 相同的 lengthcharacter 向量發送到 “label” 消息。 默認為 paste0(seq_len(n), ": "),其中 n <- length(x)

header

在打印消息之前編輯字符串cat()

細節

存在last.warning對象並使用warnings()的情況請參見options("warn")的說明。本質上,這是如果 options(warn = 0)warning 至少被調用一次。

請注意,length(last.warning) 最大為 getOption("nwarnings")(生成警告時),默認情況下為 50。要增加,請使用類似的東西

  options(nwarnings = 10000)  

last.warning 可能指的是最後記錄的警告,而不是最後的警告,例如,如果 options(warn) 已更改或發生災難性錯誤。

warnings() 返回 S3 類 "warnings" 的對象,本質上是一個名為 list 的對象。

summary(<warnings>) 返回一個 "summary.warnings" 對象,該對象本質上是具有 "counts" 屬性的唯一警告 ( unique(object) ) 的 list ,有點實驗性。

警告

last.warning 的存儲位置沒有記錄,也不可見,並且可能會發生變化。

例子

## NB this example is intended to be pasted in,
##    rather than run by example()
ow <- options("warn")
for(w in -1:1) {
   options(warn = w); cat("\n warn =", w, "\n")
   for(i in 1:3) { cat(i,"..\n"); m <- matrix(1:7, 3,4) }
   cat("--=--=--\n")
}
## at the end prints all three warnings, from the 'option(warn = 0)' above
options(ow) # reset to previous, typically 'warn = 0'
tail(warnings(), 2) # see the last two warnings only (via '[' method)

## Often the most useful way to look at many warnings:
summary(warnings())

op <- options(nwarnings = 10000) ## <- get "full statistics"
x <- 1:36; for(n in 1:13) for(m in 1:12) A <- matrix(x, n,m) # There were 105 warnings ...
summary(warnings())
options(op) # revert to previous (keeping 50 messages by default)

參考

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

也可以看看

warning

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Print Warning Messages。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。