auto.arima allowmean = T 与 allowmean = F 相同

auto.arima with allowmean = T is the same as allowmean = F

我使用 allowmean = Tallowmean = Fforecast 包运行 auto.arima 并得到完全相同的结果 - 它们都包含截距。

有谁知道我做错了什么以及如何解决这个问题?

以下是一个可重现的例子:

library(forecast)
set.seed(1)
z=arima.sim(n = 101, list(ar = c(0.8)))
ts.plot(z)

用 allowmean = F 运行 auto.arima 产生:

> auto.arima(z,d = 0,max.p = 7,max.q=0,stepwise= F ,allowmean = F)
Series: z 
ARIMA(1,0,0) with non-zero mean 

Coefficients:
         ar1  intercept
      0.7275     0.4241
s.e.  0.0688     0.3012

sigma^2 estimated as 0.7118:  log likelihood=-126.52
AIC=259.05   AICc=259.29   BIC=266.89

这与 allowmean = T:

完全相同
> auto.arima(z,d = 0,max.p = 7,max.q=0,stepwise= F ,allowmean = T)
Series: z 
ARIMA(1,0,0) with non-zero mean 

Coefficients:
         ar1  intercept
      0.7275     0.4241
s.e.  0.0688     0.3012

sigma^2 estimated as 0.7118:  log likelihood=-126.52
AIC=259.05   AICc=259.29   BIC=266.89

如有任何想法,我将不胜感激。

这似乎是一个真正的错误。 (请注意,allowmean 是最近添加的 - 它在 forecast 6.1 中可用,但在 5.1 中不可用。)我建议您联系软件包维护者 Rob Hyndman,并向他指出这个问题。