如果时间序列包含NAs和biasadj = TRUE,则Auto.arima仅返回适合值的NAs

问题描述

我正在使用以下预测代码:

library(forecast)   
ts <- ts(c(AirPassengers,NA),frequency = frequency(AirPassengers),start = time(AirPassengers)[1])   
fit <- auto.arima(ts,lambda = 0,biasadj = TRUE)

如果时间序列包含NA,则拟合值仅为NA。 如果没有,一切正常。 仅在使用biasadj = TRUE时发生。 我确实需要此参数,因为预测将在以后进行调整。

解决方法

这是一个错误,现已在github(https://github.com/robjhyndman/forecast/commit/ec10b4d671f2aba9f4f5b44d19a7f3c959f5511f)上修复。发生这种情况是因为偏差调整需要残差的方差,并且由于残差包含NA,所以方差设置为NA。现在会在计算方差之前删除NA。

您可以使用devtools::install_github("robjhyndman/forecast")安装预报的github版本。

library(forecast)
#> Registered S3 method overwritten by 'quantmod':
#>   method            from
#>   as.zoo.data.frame zoo
ts <- ts(c(AirPassengers,NA),frequency = frequency(AirPassengers),start = time(AirPassengers)[1])   
fit <- auto.arima(ts,lambda = 0,biasadj = TRUE)
fitted(fit)
#>           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
#> 1949 111.7644 117.9244 131.9603 128.9940 121.0177 135.0168 148.0163 148.0257
#> 1950 117.0192 122.1417 139.4036 136.8668 127.1664 141.6609 160.9362 166.3608
#> 1951 135.0152 152.0046 169.1444 168.1832 154.4083 190.2018 205.1139 201.5096
#> 1952 169.5327 180.1300 207.1550 186.9879 181.4463 200.4014 235.9657 232.5887
#> 1953 199.3282 208.1657 223.9254 217.2754 227.5214 260.2296 272.3481 273.6836
#> 1954 207.9965 211.8017 227.6274 223.8273 223.0809 253.4382 282.7735 302.0030
#> 1955 232.6668 233.6070 278.9402 262.3460 268.2018 300.2183 343.9312 356.3116
#> 1956 284.1752 276.3670 324.8120 315.0016 315.6151 360.7117 417.2304 406.3885
#> 1957 316.9689 307.6216 352.4723 349.4975 352.2430 408.6635 466.4857 456.4817
#> 1958 351.1747 332.7414 379.1105 362.2221 358.9109 422.7420 478.1954 481.4878
#> 1959 349.9776 339.0096 394.1057 390.3720 404.5410 489.2669 536.1201 547.3600
#> 1960 419.0486 397.5631 460.5898 424.0306 464.5782 542.3447 612.1384 626.2449
#> 1961       NA                                                               
#>           Sep      Oct      Nov      Dec
#> 1949 136.0412 119.0550 104.0629 118.3815
#> 1950 155.1446 136.6225 117.2537 132.1821
#> 1951 185.0585 158.0349 138.8752 169.7223
#> 1952 220.1838 185.3222 166.5017 197.4332
#> 1953 244.5126 213.2651 188.7034 210.4479
#> 1954 262.6187 231.6730 201.0383 229.2421
#> 1955 310.3633 276.2481 241.7870 270.3036
#> 1956 361.4957 315.8971 270.6371 311.4373
#> 1957 409.4854 355.0057 307.7594 349.2082
#> 1958 434.0926 360.6985 316.1704 351.0444
#> 1959 466.5646 407.2515 355.0986 397.7856
#> 1960 513.2724 447.8723 400.9856 438.7865
#> 1961

reprex package(v0.3.0)于2020-09-03创建

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...