【发布时间】:2019-09-10 08:15:05
【问题描述】:
我正在使用来自 fpp2 包的数据集 uschange 进行建模,并使用 vars 包执行增强的 Dickey-Fuller 单位根测试(ADF 测试)。在此示例中,我有五个系列,名称分别为“Consumption”、“Income”、“Production”、“Savings”和“Unemployment”。您可以查看以下代码:
#CODE
library(fpp2)
library(vars)
#CODE
library(fpp2)
library(vars)
MY_DATA<-data.frame(uschange)
MY_ADF_TESTS=apply(MY_DATA,2,function(x){
return(
list(
#Constant
summary(ur.df(x, type = "drift",selectlags = c("BIC"))),
summary(ur.df(diff(x), type = "drift",selectlags = c("BIC"))),
#Trend
#Constant
summary(ur.df(x, type = "trend",selectlags = c("BIC"))),
summary(ur.df(diff(x), type = "trend",selectlags = c("BIC")))
#summary(ur.df(x, type = "none",selectlags = c("BIC")))
)
)
})
您可以在下面看到此列表的结构:
所以下一步应该从这个列表中的每个系列中提取测试统计数据和临界值并放入表中。测试统计数据和临界值位于此位置,您可以在下面的代码中看到第一个系列“消耗”
MY_ADF_TESTS$Consumption[[1]]@teststat[1]
MY_ADF_TESTS$Consumption[[1]]@cval[3:3]
MY_ADF_TESTS$Consumption[[2]]@teststat[1]
MY_ADF_TESTS$Consumption[[2]]@cval[3:3]
MY_ADF_TESTS$Consumption[[3]]@teststat[1]
MY_ADF_TESTS$Consumption[[3]]@cval[3:3]
MY_ADF_TESTS$Consumption[[4]]@teststat[1]
MY_ADF_TESTS$Consumption[[4]]@cval[3:3]
那么任何人都可以帮助如何使用 for 循环为每五个系列执行此操作并放入一个包含两列的表中。第一个可以包含来自 teststat 的数据,第二个包含每个五个系列的 cval 数据?
【问题讨论】: