【问题标题】:Combining sapply with show结合 sapply 与 show
【发布时间】:2014-05-27 09:03:07
【问题描述】:

我已经在我的多元动物园对象上运行了 ADF 测试(使用 urca 包中的 ur.df)。 现在结果存储在一个大列表中,当我使用 show() 函数时,报告的结果太多了:

$Company_A

############################################################### 
# Augmented Dickey-Fuller Test Unit Root / Cointegration Test # 
############################################################### 

The value of the test statistic is: -0.5293 


$Company_B


############################################################### 
# Augmented Dickey-Fuller Test Unit Root / Cointegration Test # 
############################################################### 

The value of the test statistic is: -0.4645 

数百家公司都在这样做,手动分析输出会花费太多时间,所以我想简化这个过程。

我从其他帖子中发现,我可以使用以下代码直接访问单个公司的测试统计数据:

show(data$Company_A@teststat)

现在我想将此函数与 sapply 函数结合使用,以便从 ADF 测试的结果中快速检索所有测试统计信息。我试过以下代码:

sapply(data, show, teststat)
sapply(data, show, @teststat)

不幸的是,两者都只返回错误(第一个说“找不到对象 teststat”,第二个说“意外的 @ in sapply”)。

【问题讨论】:

    标签: r time-series sapply multivariate-testing


    【解决方案1】:

    试试这个:

    sapply(data, function(x) show(x@teststat))
    

    【讨论】:

    • 太棒了!这产生了一长串测试统计数据,但也产生了一长串公司名称后跟“NULL”。有什么方法可以将测试统计数据保存到一个新变量中,最好是一个向量?我刚刚写了 test
    • 只使用sapply(data, function(x) x@teststat) 怎么样? show函数有那么必要吗?
    • 是的,我自己才意识到这一点^^谢谢!
    • 如果使用slot函数,则不需要function(x)部分,可以使用sapply(data, slot, "teststat")代替。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-10
    • 2011-06-03
    • 1970-01-01
    • 1970-01-01
    • 2016-08-30
    • 2021-01-05
    相关资源
    最近更新 更多