合并XTS对象

时间:2015-01-21 19:44:31

标签: r merge xts

我有5个XTS对象。每个包含一个单独的变量返回(各种资产类别,例如股票,债券,对冲基金等......)我遇到的问题是每个对象的日期顺序并不准确。某些单个对象缺少某些日期。一般来说,数据是从2004年7月到2014年12月每天,但是股票回报的XTS对象中有一些日期在债券回报的XTS对象中不存在,反之亦然。

如何合并5个XTS对象,以便生成的对象按顺序包含所有日期,并且只为当前日期缺少观察的任何返回系列生成“NA”?

我一直在尝试合并,重新分类为data.frame并执行cbind,但似乎没有任何效果。我可以做些什么来合并所有5个对象,并为没有其他系列所做观察的系列的缺失回报生成NA?

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:3)

我认为你在找这样的东西?:

 library(xts)
a <- xts(order.by = Sys.Date()-1:10,(1:10))
b <- xts(order.by = Sys.Date()-5:15,(10:20))
merge(a,b,all=TRUE)

给出:

            a  b
2015-01-06 NA 20
2015-01-07 NA 19
2015-01-08 NA 18
2015-01-09 NA 17
2015-01-10 NA 16
2015-01-11 10 15
2015-01-12  9 14
2015-01-13  8 13
2015-01-14  7 12
2015-01-15  6 11
2015-01-16  5 10
2015-01-17  4 NA
2015-01-18  3 NA
2015-01-19  2 NA
2015-01-20  1 NA

希望能让你朝着正确的方向前进......