【问题标题】:Multivariate time series modelling in RR中的多元时间序列建模
【发布时间】:2010-12-15 10:00:36
【问题描述】:

我想使用 R 拟合某种多变量时间序列模型。

这是我的数据示例:

   u     cci     bci     cpi     gdp    dum1 dum2 dum3    dx  
 16.50   14.00   53.00   45.70   80.63  0   0    1     6.39 
 17.45   16.00   64.00   46.30   80.90  0   0    0     6.00 
 18.40   12.00   51.00   47.30   82.40  1   0    0     6.57 
 19.35   7.00    42.00   48.40   83.38  0   1    0     5.84 
 20.30   9.00    34.00   49.50   84.38  0   0    1     6.36 
 20.72   10.00   42.00   50.60   85.17  0   0    0     5.78 
 21.14   6.00    45.00   51.90   85.60  1   0    0     5.16 
 21.56   9.00    38.00   52.60   86.14  0   1    0     5.62 
 21.98   2.00    32.00   53.50   86.23  0   0    1     4.94 
 22.78   8.00    29.00   53.80   86.24  0   0    0     6.25 

数据是季度的,虚拟变量是季节性的。

我想做的是参考其他一些预测 dx,同时(可能)考虑季节性。为了论证,假设我想使用“u”、“cci”和“gdp”。

我该怎么做呢?

【问题讨论】:

    标签: r statistics time-series


    【解决方案1】:

    如果您还没有这样做,请查看the time series view on CRAN,尤其是关于多元时间序列的部分。

    在金融领域,执行此操作的一种传统方法是使用因子模型,通常使用 BARRA 或 Fama-French 类型的模型。 Eric Zivot 的 "Modeling financial time series with S-PLUS" 很好地概述了这些主题,但它不能立即转移到 R. Ruey Tsay 的“Analysis of Financial Time Series”(在 CRAN 的 TSA 包中提供)也对因子模型和主成分进行了很好的讨论第九章分析。

    R 也有许多包覆盖vector autoregression (VAR) 模型。特别是,我建议查看 Bernhard Pfaff 的 VAR Modelling (vars) 包和 the related vignette

    我强烈建议您查看Ruey Tsay's homepage,因为它涵盖了所有这些主题,并提供了必要的 R 代码。尤其是"Applied Multivariate Analysis""Analysis of Financial Time Series""Multivariate Time Series Analysis" 课程。

    这是一个非常大的主题,有很多好书涵盖了它,包括多元时间序列预测和季节性。这里还有一些:

    1. 克莱伯和泽莱斯。 “Applied Econometrics with R”没有具体解决这个问题,但它很好地涵盖了整个主题(另见 CRAN 上的 AER 包)。
    2. Shumway 和斯托弗。 “Time Series Analysis and Its Applications: With R Examples”包含多变量 ARIMA 模型的示例。
    3. 哭泣者。 “Time Series Analysis: With Applications in R”是该主题的经典之作,已更新为包含 R 代码。

    【讨论】:

      【解决方案2】:

      当你第一次问这个问题时不知道这个功能是否可用,但现在在 base R 中很容易使用 arima 功能;只需在函数中使用 xreg 参数指定您的外部回归量。尝试?arima,当您阅读文档时,请特别注意 xreg 参数。这很容易,祝你好运。

      【讨论】:

      • 根据文档,Arima 仅支持单变量时间序列。 OP 有一个多元时间序列。
      【解决方案3】:

      在预测包中,尝试:

      arima(df[,1:4], order=(0,0,0), xreg=df[,6:8])
      

      用于预测uccigdp

      要从中预测dx,请尝试使用 VAR 模型。这是一个很好的教程 (PDF)。

      【讨论】:

      • 恐怕这行不通;错误消息:“arima(data[, 1:4], order = c(0, 0, 0), xreg = data[, 6:8]) 中的错误:仅针对单变量时间序列实现”
      • 是的,它只适用于单变量,不要忘记order=c(0,0,0)
      猜你喜欢
      • 2015-05-29
      • 2018-05-27
      • 2018-05-19
      • 2017-07-21
      • 1970-01-01
      • 2011-05-07
      • 2014-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多