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