zoukankan      html  css  js  c++  java
  • R语言代写时间序列分析复杂的季节模式

    原文链接

    分析复杂的季节模式

    当时间序列数据的频率高于季度或月度时,许多预测程序在分析季节性影响方面遇到了障碍。

    澳大利亚蒙纳士大学的研究人员在美国统计协会杂志(JASA)上发表了一篇有趣的论文,以及一个R程序,以处理这种情况 - 可称为“复杂的季节性”。

    我已经更新并修改了他们的一项计算 - 使用每周而不是每日的美国常规汽油价格数据 - 并发现整个事情非常有趣。

    如果您查看图表下方图例中的颜色代码,则更容易阅读和理解。

    我从FRED那里抓住了传统的每周美国汽油价格。这些价格是“常规” - 泵的普通选择。在查看之前的数据后,我确定了2000年第一周的开始日期。然后,我在Hyndman R Forecast软件包中使用了tbats(。),可以下载熟悉本站点的读者,以便在开源矩阵编程语言R中使用。

    然后,我建立了2012年第一周称为newGP的时间序列的结束日期,预测将tbats(。)应用于2000年的历史数据:1到2012:1其中第二个数字指的是从1到52的周数。请注意,需要进行一些数据清理工作,以便将天然气价格数据一致地划分为52周。我将“第53周”的平均值与最接近的一周(第二年的52或1)进行平均,然后摆脱了53周。

    104周的预测显示在上图中的红色实线上。

    这实际上看起来很有希望,好像它可能为美国运输机构编码一些有用的信息。

    JASA论文的草稿可以PDF格式下载。它被称为具有复杂季节性模式的预测时间序列,使用指数平滑以及每日美国天然气价格,分析土耳其的日常电力需求和银行呼叫中心数据。

    我只是分析天然气价格数据的一部分,因为我还没有接受每日数据。但是每周数据中由tbats(。)识别的季节性模式很有趣,如下所示。

    每周频率可以让我们以一定的精度“进入”模式的年中摆动。从模型的样本外性能来看,这种“摆动”在某些情况下可能会更加突出并且非常重要。

    适合于较高频率数据的Trignometric系列提取tbats(。)中的季节性模式其还具有其他高级特征,例如估计残差的ARMA(自回归移动平均)模型的能力。

    我没有完全优化估算,但这些结果足够强大,可以鼓励探索切换和开关程序。

    在此聚合级别工作的另一个例程是stlf(。)例程。这是使用STL分解在第36章基于时间序列分解的模式发现中详细描述的数据挖掘论文集。

     

    如果您有任何疑问,请在下面发表评论。 

  • 相关阅读:
    Java多线程:sleep()、yield()和join()方法浅析
    Java多线程:InterruptedException出现时的处理方法
    Java多线程:中断机制interrupt以及InterruptedException出现的原因
    Java多线程:哲学家就餐问题和生产者消费者问题
    Java多线程:wait()和notify()方法详解
    Java多线程:多线程的Synchronized详解
    Java多线程:线程的实现、生命周期和优先级以及与进程之间的区别
    ie6下:png图片不透明 和 背景图片为png的节点的内部标签单击事件不响应
    实现每次触发事件后隔一段时间后才能再次触发事件
    window.open窗口居中和窗口最大化
  • 原文地址:https://www.cnblogs.com/tecdat/p/11320304.html
Copyright © 2011-2022 走看看