我有一个关于聚类分析的问题。有 3000 家公司,必须按照 5 年以上的用电量进行聚类。每家公司都有 5 年内每小时的价值。我想了解一些公司在这段时间内是否有相同的使用功率模式。结果应用于日常用电量预测。如果您对如何在 SPSS 中对时间序列进行聚类有一些想法,请与我分享。
如何对时间序列进行聚类?
机器算法验证
时间序列
聚类
spss
2022-01-26 00:01:49
2个回答
A)花费大量时间对数据进行预处理。预处理是您工作的 90%。
B)为时间序列选择适当的相似性度量。例如,阈值交叉距离在这里可能是一个不错的选择。除非您有不同的时区,否则您可能不需要动态时间扭曲距离。阈值交叉可能更适合检测时间模式,而不注意实际幅度(这可能因公司而异)。
C)使用可以与任意距离函数一起使用的层次聚类或 DBSCAN 等方法对生成的差异矩阵进行聚类。
您可能想查看以每日、每周和每年为周期的预测每小时时间序列讨论涉及每日数据和假期/回归量的每小时数据。您有 5 年的数据,而其他讨论涉及 883 个每日值。我的建议是,您可以建立一个包含回归量的每小时预测,例如星期几;使用每日总计作为附加预测变量的一年中的一周和假期。这样一来,3,000 家公司中的每家公司都有 24 个模型。现在您要做的是按小时计算 3,000 个模型,使用通用 ARIMAX 结构考虑每个回归量、星期几、星期几变化的响应模式参数和每周指标,同时隔离异常值。然后,您可以使用所有 3000 家公司在全球范围内估计参数。执行 Chow 测试http://en.wikipedia.org/wiki/Chow_test由于参数的恒定性和拒绝将公司聚集成同质组。我将其称为单维聚类分析。由于 SPSS 在时间序列中的功能非常有限,您可能想在其他地方寻找软件。
其它你可能感兴趣的问题