首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于rollapply的ADF测试

基于rollapply的ADF测试
EN

Stack Overflow用户
提问于 2017-07-27 02:00:26
回答 2查看 169关注 0票数 0

我想知道是否有办法在给定的时间间隔内进行ADF测试。下面是我计算每20个样本的平均数的一个例子:

代码语言:javascript
复制
rollapply(data, 20, FUN = mean)

我想使用相同的逻辑,每20个样本运行ADF测试。因此,我使用了以下代码:

代码语言:javascript
复制
n = 24
test <- rollapply(spreadClose, n, FUN = adf.test)

注意: adf.test()来自名为"tseries“的库。

有人能解释一下为什么这不管用吗?我得到了以下错误。

名(X) <- dn中的错误:“dimnames”2的长度不等于数组范围

我真的很感谢你的反馈!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-14 23:55:50

我使用了以下代码并开始工作:

代码语言:javascript
复制
adftest <- function(x)
{
    adfPvalue <-  adf.test(x)$p.value
    adfPvalue
}

PValue <- function(x) {
    Pvalue <- rollapply(x, N, adftest)
    Pvalue
}

PValue(out)
票数 1
EN

Stack Overflow用户

发布于 2017-07-27 02:52:21

这个怎么样:

代码语言:javascript
复制
library(zoo)
library(tseries)
z <- zoo(rnorm(100), as.Date(1:100))
rollapplyr(z, 20, adf.test)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45340102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档