时间是决定企业兴衰的最关键因素。这就是为什么我们看到商店和电子商务平台的销售与节日一致。这些企业分析多年的消费数据,以了解打开大门的最佳时间,并看到消费支出的增加。
但是,作为一个数据科学家,你怎么能进行这种分析呢?别担心,你不需要建造一台时间机器!时间序列建模是一种强大的技术,是理解与预测趋势和模式的门户。
但是即使是时间序列模型也有不同的方面。我们在Web上看到的大多数例子都是用单变量时间序列来处理的。不幸的是,现实世界的用例并不是这样工作的。有多个变量在起作用,同时处理所有这些变量是数据科学家体现其价值的地方。
在这篇文章中,我们将了解什么是多元时间序列,以及如何处理它。我们还将在Python中进行案例研究并实现它,以使您对该主题有实际的理解。
目录表
单变量与多变量时间序列
— —单变量时间序列
— —多元时间序列
多变量时间序列-向量自回归(VAR)的处理
为什么我们需要VAR?
多变量时间序列的平稳性
训练验证拆分
Python实现
1.单变量与多变量时间序列
本文假定读者熟悉单变量时间序列的性质,以及用于预测的各种技术。由于本文将重点讨论多变量时间序列,因此我建议您阅读以下文章,这些文章可以作为对单变量时间序列的良好介绍:
但是,在讨论多元时间序列的细节之前,我将快速地介绍一下什么是单变量时间序列。让我们逐一观察它们的差异。
1.1单变量时间序列
一个单变量时间序列,顾名思义,是一个具有单一时间依赖变量的序列。
例如,在过去的2年中,查看下面的样本数据集,该数据集包括温度值(每小时)。这里,温度是因变量(取决于时间)。
如果要求我们预测未来几天的温度,我们将查看过去的值,并尝试测量和提取一个模式。我们会注意到早晨和晚上的温度较低,下午则达到峰值。此外,如果你有过去几年的数据,你会发现,在11月到1月份,天气比较冷,而在4月至6月比较热。
这样的观察将有助于我们预测未来的价值观。你注意到我们只使用了一个变量(过去2年的温度)吗?因此,这被称为单变量时间序列分析/预测。
1.2多元时间序列(MTS)
多变量时间序列具有一个以上的时间依赖变量。每个变量不仅取决于其过去的值,而且还对其他变量有一定的依赖性。这种依赖性用于预测未来的价值。听起来很复杂?让我解释一下。
考虑上面的例子。现在假设我们的数据集包括过去两年的汗水百分比、露点、风速、云层覆盖率等,以及温度值。在这种情况下,有多个变量被认为是最佳预测温度。像这样的系列将属于多元时间序列的范畴。下面是一个例证:
现在我们了解了多元时间序列的样子,让我们了解如何利用它来建立预测。
2.多元时间序列的处理——VAR
在本节中,我将介绍多变量时间序列预测中最常用的方法之一——向量自回归(VAR)。
在VAR模型中,每个变量是其自身过去值和所有其他变量的过去值的线性函数。为了更好地解释这一点,我将使