在调用merge.xts
之后,我生成的时间序列对象有3列,名为A.1,B.1,C.1。原始xts对象都设置了A,B,C列。我假设根据文档在所有公共列上执行了合并。
我检查了列内容A,B,C和A.1,B.1,C.1。对my.merged[my.merged$A.1 != my.merged$A, ]
的调用不会为所有这些列返回任何行。
为什么公共列没有在一组中折叠?
答案 0 :(得分:4)
?merge.xts
非常明确地说它是“用于通过 time (索引)对'xts'对象执行合并操作。”没有任何地方说合并是在公共列上完成的。你可能在?merge
中读到了这个,参考了data.frame方法。
答案 1 :(得分:2)
我认为您可能想要的是rbind
,而不是merge
。我在http://darrendev.blogspot.jp/2012/08/small-rxts-code-snippets-and-tips.html上通过示例数据对此进行了博客(参见第6a和6b项)。
如果您正在合并的两个xts对象中都有相同的时间戳,那么您将获得重复的行。因此,为了获得所需的结果,您可以删除重复项作为后处理步骤。