区分具有不同差异顺序的多个时间序列

时间:2017-10-11 12:36:12

标签: r

我有一个时间序列对象,由 n 时间序列和 ndiffs 组成。我得到一个向量,其中差分顺序是获得静止时间序列所必需的。现在我想做到这一点。但是

tmp <- sapply(ts, ndiffs, alpha=0.05, test=c("kpss", "adf", "pp")) 
sapply(ts, function(x) diff(x,differences = tmp) )

..无效。

是否有一些想法没有使用 for 循环?

1 个答案:

答案 0 :(得分:0)

您可以使用map2包中的purrr来遍历两个向量:

purrr::map2(.x = ts,
            .y = tmp,
            .f = function(x, y){
              diff(x, differences = y)
            })

mapply

mapply(function(x, y){
  diff(x, difference = y)
}, x = ts, y = tmp)

sapply的问题是它只迭代单个对象。