评估时间序列之间的同步性

Assessing synchrony between time series

我想评估两个时间序列之间的同步性(即它们随时间的演变是否相同?)。我正在使用 Python。以下是我拥有的时间序列示例:

第一个图显示具有非常相似演化(同步)​​的时间序列,而第二个图显示视觉上不具有相似演化的时间序列。

我考虑过动态时间扭曲来评估时间序列之间的相似性,但问题是我们获得了时间序列之间的距离,这很难解释。我想要的是一个标准化的数字(例如 -1 和 1 之间的相关性),它会显示序列是否同步(即它们同时增加或减少)。这样我就可以更轻松地比较几个时间序列的演变,即使它们的全局距离(即平均值)不同,如第一张图和第二张图所示。动态时间扭曲是否可能有这样的数字?或者其他方法更合适?

您首先可能想定义“随时间的相同演变”的含义。 DTW 考虑了时间序列和距离之间的滞后。 根据您是否 normalize/scale 数据,您的第一张图的 DTW 可能大于您的第二张图。这仅意味着两者可以更好地对齐,损失更小,同时还可以及时来回移动。然后又可以比较DTW,因为0距离意味着完美对齐,而任何其他值都意味着更大的差异。

您也可以尝试从另一个预测(回归)一个。再一次,我不明白为什么一个简单的相关性不能回答你想知道的。 Pearson 相关性可以使值标准化,因此图表中显示的两者之间的距离无关紧要。

由于您使用的是 python,我想分享一下我不久前写的一篇教程,内容是比较 DTW、Pearson correaltion 和其他量化时间序列数据同步性的方法:https://towardsdatascience.com/four-ways-to-quantify-synchrony-between-time-series-data-b99136c4a9c9 希望这对您有所帮助!