2012-02-13 66 views
2

在動物園對象的滾動窗口上應用函數通常很順利,移動平均線:在滑動窗口上應用統計測試

z <- zoo(1:10, as.Date(31:40)) 
rollapply(z, 4, mean, align="right") 

現在我想要做同樣的事情用一個統計檢驗,即適用於每個窗口上Augmented Dickey-Fuller test並得到檢驗統計量就像我在上面的例子中得到的平均值。

所以基本上我找下面的一段代碼相當於(這當然不行!):

rollapply(z, 4, ADF.test, align="right") 
+2

你顯然使用uroot包,這是[不再CRAN(HTTP://cran.r-project。組織/網絡/包/ uroot /)。 – 2012-02-13 08:36:44

回答

6

我下面的作品。

library(zoo) 
library(tseries) 
z <- zoo(rnorm(100), as.Date(1:100)) 
rollapplyr(z, 20, adf.test) 

如果你只是想p值:

rollapplyr(z, 20, function(u) adf.test(u)$p.value)