5

我有许多时间序列记录有时会重叠,并且不一定具有相同的开始日期和结束日期。每行代表一个不同的时间序列。我使它们都具有相同的长度以保持数据收集的实际时间。

例如,在 t(1,2,3,4,5,6):

Station 1: nan, nan, 2, 4, 5, 10

Station 2: nan, 1, 4, nan, 10, 8

Station 3: 1, 9, 4, 7, nan, nan

我正在尝试在 Python 中运行聚类分析,以对具有相似行为的站点进行分组,其中行为的时机很重要,所以我不能仅仅摆脱 nans。(据我所知)。

有任何想法吗?

4

1 回答 1

2

K-means 不是这类数据的最佳算法。

K-means 旨在最小化集群内方差(= 平方和,WCSS)。

但是你如何计算 NaN 的方差?无论如何,这里的方差有多大意义?

相反,您可能想使用

  • 为时间序列设计的相似性度量,例如 DTW、阈值交叉距离等。
  • 基于距离的聚类算法。如果你只有几个系列,层次聚类应该没问题。
于 2013-09-05T08:28:01.333 回答