与所有其他可用时间序列相比,如何有效地找到给定时间序列中缺失的时间戳?

时间:2017-01-15 14:31:20

标签: java time-series linear-interpolation

假设我们有以下时间序列:

X1 = {(0, 3), (1, 4), (3, 5)}  
X2 = {(0, 3), (1, 4), (2, 6) (3, 5), (4, 8)} 
X3 = {(0, 3), (1, 4), (2, 6) (3, 5), (4, 8), (5, 9)}

其中元组的第一个元素表示时间,第二个元素表示此时的值(例如,在某个时间点测量的温度)。

找出X1X2X3相比缺失时间戳的有效方法(例如X1X2相比缺失的时间戳}和X3是:(2,_)(4,_)(5,_)),然后使用线性插值为X1中缺少的时间戳添加一些值?您将使用什么样的数据结构,以及如何在知道时间戳的情况下查找缺失值,然后在两点之间应用线性插值(作为输出,我应该看到X1包含所有值)?

1 个答案:

答案 0 :(得分:0)

在我有一些有用的东西之前,我不会担心效率。

线性插值可能不是一个好主意。有很多插值方案。你应该研究一些更高阶或样条方案。

如果每个点都必须有一组通用的时间戳,那么您必须首先迭代所有时间戳并收集一组时间戳。一旦你拥有它们,你将在每个需要数据的插值方案上执行。

这不是一个微不足道的问题。你应该做更多的研究来找到像this这样的东西。