Arima如何处理不规则索引时间戳?

时间:2019-07-04 09:06:42

标签: python timestamp time-series prediction arima

让我们想象一个像这样的数据集:

Index                 Amount_in_checkout
01.02.2018 08:00:00   234.50 
01.02.2018 08:05:00   234.50 
01.02.2018 08:10:00   234.50 
01.02.2018 08:15:00   236.75
01.02.2018 08:20:00   235.00 
01.02.2018 08:25:00   234.50 
01.02.2018 08:30:00   234.50 
...
01.02.2018 19:55:00   332.50 

现在,假设此数据集每5分钟跟踪一次商店拥有的金额。该商店的营业时间是从上午8点到晚上20点,因此没有任何关于从下午20点到早上8点会发生什么的信息。在这样的不规则时间戳上,有马会如何看待?

我的想法:

  • 应该将一天中的所有行分组为一行(例如一天的第一行, freq ='D') 并预测上午8点的期望值。我认为2的主意不好 原因:缺少大量数据和准确性,在此模型中白天发生的事情非常重要,其次,问题仍然存在,因为我们有周末和节假日,因此时间戳保持不规则。当然,数据集要小得多,包括一年的数据,包括周末和节假日,我们有300天。

  • 应将日行划分为24个bin,首先或以最合适的方式进行平均,将行扩展至每天24h并预测一天中的每个小时( freq ='h'< / em>)。该模型似乎更准确,但周末和节假日仍然存在问题。

  • 我正在考虑为假日和工作日添加exog变量。对于某种程度上的数据,即使商店关门了,信息中仍然有一些信息(不完整),全天显示相同的金额。此解决方案是否可以告诉模型,周末或假日时“金额”不应更改?

我想要做的是保持线性且规则的时间戳,以避免天数不发生变化,因为我了解Arima的工作原理,但从未尝试过像这样的数据集。也许对此有另一种解决方案(?),或者只是删除了这些表格数据,而不使用这个exog vars(?)

PS。即使没有周末和节假日,模型也可以按天分组或分成24个容器,但并不能确保我的想法是正确的。有时候真的很准确,有时候会漏掉35%/ 40%,通常按照趋势按天分组,连续5天;如果延迟24个箱,则顺延24h。

我非常感谢一些链接,课程和书籍,以深入了解其工作原理。

在此先感谢您的英语:)

0 个答案:

没有答案