我有一个 2 年样本数据范围内的物理时间序列,频率为 30 分钟,但是如您所见,有多个和广泛的丢失数据间隔:
我尝试使用包中的函数na.interp
但forecast
结果不佳(如上所示):
sapply(dataframeTS[2:10], na.interp)
我正在寻找更有用的方法。
更新:
这是有关我要捕获的模式的更多信息,特别是 row data
。该子样本属于 May。
我有一个 2 年样本数据范围内的物理时间序列,频率为 30 分钟,但是如您所见,有多个和广泛的丢失数据间隔:
我尝试使用包中的函数na.interp
但forecast
结果不佳(如上所示):
sapply(dataframeTS[2:10], na.interp)
我正在寻找更有用的方法。
更新:
这是有关我要捕获的模式的更多信息,特别是 row data
。该子样本属于 May。
你可能想试试这个**imputeTS**
包。这是一个专门用于时间序列缺失值插补的 R 包。
, na_seadec()
,方法na_seasplit()
在na_kalman()
这里可能很有趣
还有更多算法选项 - 您可以在本文中找到有关包的列表。
在这种特定情况下,我会尝试:
na_seasplit(yourData)
或者
na_kalman(yourData)
或者
na_seadec(yourData)
请注意,您可能需要使用时间序列正确提供季节性信息。(您必须创建一个时间序列(ts
对象)并设置frequency
参数)
仍然可能根本无法解决,您将不得不尝试。(如果你能提供数据我也试试看)