首页 > 解决方案 > 绘制中间和最优 ARIMA(p,d,q) 的 AIC

问题描述

在用于找出最佳 ARIMA(p,d,q) 模型的优化算法之后,根据 AIC 的最小化,我还得到以下内容:

head()

  d p q       AIC
1 0 0 0 -2671.744
2 0 0 1 -2686.691
3 0 0 2 -2685.053
4 0 0 3 -2683.094
5 0 0 4 -2688.464
6 0 0 5 -2686.973

tail()

   d p q       AIC
31 0 5 0 -2685.982
32 0 5 1 -2684.926
33 0 5 2 -2683.003
34 0 5 3 -2683.654
35 0 5 4 -2686.069
36 0 5 5 -2698.871

哪里,是的,到处都是 d=0。

我想知道是否有人知道如何绘制(3d 表面甚至 2d)不同的组合,以便可视化 AIC 方面的改进。以某种方式突出显示最大 AIC 可能也很酷。

标签: rplotarima

解决方案


不确定您到底想要什么类型的可视化,但热图似乎合适。这是一个在ggplot2. 我制作pq因子,然后从那里只用了一个geom_raster来制作瓷砖。

library(tidyverse)

d1 <- "dummy d p q       AIC
1 0 0 0 -2671.744
2 0 0 1 -2686.691
3 0 0 2 -2685.053
4 0 0 3 -2683.094
5 0 0 4 -2688.464
6 0 0 5 -2686.973" %>% read_table2()

d2 <- "dummy    d p q       AIC
31 0 5 0 -2685.982
32 0 5 1 -2684.926
33 0 5 2 -2683.003
34 0 5 3 -2683.654
35 0 5 4 -2686.069
36 0 5 5 -2698.871" %>% read_table2()

df <- bind_rows(d1, d2) %>% 
    select(-dummy) %>%
    mutate_at(vars(p, q), as.factor)

ggplot(df, aes(x = p, y = q, fill = AIC)) +
    geom_raster() +
    scale_fill_viridis_c(option = "A")

reprex 包(v0.2.0)于 2018 年 4 月 30 日创建。


推荐阅读