x=3 9 5 1 4 9;
index = (second(08:20:00)+1..4) join 08:21:01 join 08:21:02
x = index.indexedSeries(x)
move(x,3s)
move
函数的计算规则与tmove
类似。对于T中的每个元素Ti,返回X中与T中(Ti - window)相同位置的元素。如果T中没有(Ti - window)匹配,则返回前一个X中对应的元素(Ti - 窗口)的相邻时间。详情请参阅tmove — DolphinDB 1.30 文档。
在您的脚本中,由于索引中没有 08:20:58 (08:21:01 - 3s) 和 08:20:59 (08:21:02 - 3s) 匹配,因此 x 中的相应元素返回上一个相邻时间 (08:20:04)。
T = (second(08:20:00)+1..4) join 08:21:01 join 08:21:02
X = 3 9 5 1 4 9
m = table(T as t,X as x)
select *, tmove(t, x, 3s) from m
// output
t x tmove_t
08:20:01 3
08:20:02 9
08:20:03 5
08:20:04 1 3
08:21:01 4 1
08:21:02 9 1