【问题标题】:combine two zoo time series结合两个动物园时间序列
【发布时间】:2017-10-14 10:43:30
【问题描述】:

我有 2 个连续的 ZOO 时间序列(一个的日期在另一个完成之后开始),它们具有以下形式(但更长,不仅是 NA 值):

一个:

1979-01-01 1979-01-02 1979-01-03 1979-01-04 1979-01-05 1979-01-06 1979-01-07 1979-01-08 1979-01-09 
    NA         NA         NA         NA         NA         NA         NA         NA         NA 

b:

1988-08-15 1988-08-16 1988-08-17 1988-08-18 1988-08-19 1988-08-20 1988-08-21 1988-08-22 1988-08-23 1988-08-24 1988-08-25 
    NA         NA         NA         NA         NA         NA         NA         NA         NA         NA         NA 

我想做的就是将它们组合成一个 ZOO 对象,这似乎是一项基本任务,但我做错了什么。我使用“合并”功能:

combined <- merge(a, b)

但结果是这样的:

             a   b
1980-03-10  NA   NA
1980-03-11  NA   NA
1980-03-12  NA   NA
1980-03-13  NA   NA
1980-03-14  NA   NA
1980-03-15  NA   NA
1980-03-16  NA   NA
.
.

这不是时间序列,长度不合适:

> length(a)
[1] 10957
> length(b)
[1] 2557
> length(combined)
[1] 27028

我怎样才能将它们组合成一个具有原始形式的时间序列?

【问题讨论】:

    标签: r merge time-series


    【解决方案1】:

    假设在最后的 Note 中可重现显示的系列,合并两个系列的结果有 20 次和 2 列(每个系列一列)。单个系列的长度为 9 和 11 个元素,合并的系列是一个动物园对象,有 9 + 11 = 20 行(因为没有相交时间)和 2 列(每个输入一个)和长度 40 (= 20 * 2) .请注意,多元序列的长度是其中元素的数量,而不是时间点的数量。

    length(z1)
    ## [1] 9
    length(z2)
    ## [1] 11
    
    m <- merge(z1, z2)
    
    class(m)
    ## [1] "zoo"
    
    dim(m)
    ## [1] 20  2
    
    nrow(m)
    ## [1] 20
    
    length(index(m))
    ## [1] 20
    
    length(m)
    ## [1] 40
    

    如果你想要一个接一个地把它们串起来,那么使用c:

    length(c(z1, z2))
    ## [1] 20
    

    以上内容与mergeclength 在基础 R 中的工作方式一致。

    注意:

    library(zoo)
    
    z1 <- zoo(rep(NA, 9), as.Date(c("1979-01-01", "1979-01-02", "1979-01-03", 
    "1979-01-04", "1979-01-05", "1979-01-06", "1979-01-07", "1979-01-08", 
     "1979-01-09")))
    
    z2 <- zoo(rep(NA, 11), as.Date(c("1988-08-15", "1988-08-16", "1988-08-17",
    "1988-08-18", "1988-08-19", "1988-08-20", "1988-08-21", "1988-08-22", 
    "1988-08-23", "1988-08-24", "1988-08-25")))
    

    【讨论】:

      猜你喜欢
      • 2015-09-27
      • 2012-02-27
      • 2012-03-30
      • 1970-01-01
      • 2013-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-26
      相关资源
      最近更新 更多