时间序列:异常值检测
数据挖掘
机器学习
Python
时间序列
异常检测
离群值
2021-10-10 06:13:48
4个回答
您可以计算滑动窗口中的均值和标准偏差,并使用它们来删除异常值。
例如,使用长度为 100 的窗口,您可以计算这 100 个连续观测值的平均值和标准差,并查看是否有任何点落在 3 sigma 规则之上。在这种情况下,圈出的异常值仍然会被识别,而其他的则不应该被识别,因为它们与相邻数据(即在包含它们及其相邻观测值的窗口内)不是那么异常。
我不知道有任何软件包能够完成您想要实现的目标,但可能有一个软件包。
以编程方式处理此问题的方法是计算两个(或多个平滑)连续数据点之间的差异。然后,您可以使用阈值根据这些值进行过滤。
您可以先区分系列,然后根据您提到的标准偏差应用经典方法。
您可以使用数组切片。如果您在此处显示的数据在数组中可用,您可以找到要删除的 ouliers 的索引,然后将它们取出。
您还可以将数据拆分为两个不同的数据集,并将异常值检测算法应用于数据集,包括您想要移除的尖峰。
其它你可能感兴趣的问题
