timeSeries没有完成它的工作

时间:2011-02-08 22:48:52

标签: r time-series

我正在使用timeSeries包,尤其是align函数。我的数据很虚假,我希望通过传播最后一个可用值来填充NA。但似乎align()如果以NA结束,则直到样本结束才会出现。

一个例子:我有一个不对齐的时间序列

> notAligned
GMT
           TS.1 TS.2 TS.3 TS.4
2011-02-03   NA    1    4    8
2011-02-04    1   NA    2   NA
2011-02-07    5    6   NA   NA
2011-02-08   NA    2   NA    9

如果我使用对齐功能,则返回此

> align(notAligned)
GMT
           TS.1 TS.2 TS.3 TS.4
2011-02-03   NA    1    4    8
2011-02-04    1    1    2    8
2011-02-07    5    6   NA    8
2011-02-08   NA    2   NA    9

4号正确填写TS.2,4号和7号正确填写TS.4,但不会在8日用5填充TS.1,或用7号和8号用TS.3填充2.我会期待align填补他们......

我误解了这个功能吗?有办法解决这个问题吗? 谢谢你的帮助

1 个答案:

答案 0 :(得分:2)

我不知道为什么timeSeries::align不起作用,但我只会使用zoo::na.locf

na.locf(notAligned, na.rm=FALSE)
# GMT
#            TS.1 TS.2 TS.3 TS.4
# 2011-02-03   NA    1    4    8
# 2011-02-04    1    1    2    8
# 2011-02-07    5    6    2    8
# 2011-02-08    5    2    2    9