为什么knitr使用auto.arima显示警告?

时间:2013-03-12 12:01:11

标签: r warnings knitr forecasting

似乎从auto.arima脚本中的forecast包中运行knitr始终会生成警告 - 当我在正常的R中运行它时,我不会收到此警告。 / p>

knitr Markdown示例代码:

```{r}
library(forecast)
```
Spurious warning from forecast and knitr
========================================

The following generates a warning that I don't think is valid

```{r}
summary(auto.arima(WWWusage))
```

产生这个:

knitroutput

而在R中运行以下内容通常不会产生此类警告:

> library(forecast)
This is forecast 4.02 

> summary(auto.arima(WWWusage))
Series: WWWusage 
ARIMA(1,1,1)                    

Coefficients:
         ar1     ma1
      0.6504  0.5256
s.e.  0.0842  0.0896

sigma^2 estimated as 9.793:  log likelihood=-254.15
AIC=514.3   AICc=514.55   BIC=522.08

Training set error measures:
       ME      RMSE       MAE       MPE      MAPE      MASE 
0.3035616 3.1137542 2.4052748 0.2805566 1.9174634 0.5315228 

此外,由于此数据集是auto.arima的示例数据集,我倾向于认为警告不正确(因为我怀疑会给出一个“好的”示例)。

知道发生了什么事吗?

1 个答案:

答案 0 :(得分:8)

该警告确实存在,但被forecast内部压制;请参阅options(warn = -1)中的forecast:::search.arima

无论knitr值如何,

evaluate(实际上getOption('warn')包)都会捕获警告。在这种情况下,您必须使用Jilber建议的warning=FALSE选项。