时间序列模型,R中包含每日数据

时间:2016-09-30 11:47:59

标签: r machine-learning time-series

我有一个包含2年每日数据的数据集。数据类型有两个季节性组件(每周和每月,即每种类型的日子表现方式相似,每个月相同)。让我们忘记每年不同日期的假期。我需要建立一个时间序列模型来预测1或2个月的每日数据。我尝试了不同参数的ARIMA,预测器总是变平。

这是我的代码:

df <read.csv("data.csv", header = TRUE, sep = ";")
tseries <-ts(df[,2],start=1,frequency=7) -- also tried msts but not working        
ARIMAfit <- auto.arima(log10(tseries), approximation=FALSE,trace=FALSE)
Series: log10(tseries) 
ARIMA(2,0,1)(2,0,0)[7] with non-zero mean 

Coefficients:
      ar1     ar2     ma1    sar1    sar2  intercept
  -0.1203  0.2423  0.6590  0.3182  0.4490     2.0577
    s.e.   0.1495  0.0900  0.1404  0.0330  0.0335     0.0508

 sigma^2 estimated as 0.03187:  log likelihood=222.5
AIC=-430.99   AICc=-430.84   BIC=-398.82

Training set error measures:
                  ME      RMSE       MAE        MPE     MAPE      MASE
Training set 0.000745645 0.1777786 0.1273053 -0.7742803 6.340793 0.8641706
                ACF1
Training set -0.00434844

pred <- predict(ARIMAfit, n.ahead = 500)

lines(10^(pred$pred),col="yellow")

enter image description here

我不是这种建模的专家,所以我可能犯了一个基本错误。对此的任何帮助将不胜感激。

BR

托马斯

1 个答案:

答案 0 :(得分:0)

1)见discussion。使用虚拟变量来估计每周和每周的影响以及搜索异常值,水平变化,时间趋势以及星期几效应的变化(即季节性脉冲) 2)为什么要记录您的数据?见discussion 3)将数据与您的数据所在的日期和国家/地区一起发布。