r - 从具有多个统计测试结果列表的列表中提取统计值

标签 r statistics time-series normal-distribution stat

我在 r 中进行了 Ljung-Box 独立性测试,有 36 个滞后,并将结果存储在列表中。

for (lag in c(1:36)){
box.test.list[[lag]] <- (Box.test(btcr, type = "Ljung", lag))
}

我想提取 p 值以及检验统计量(X 平方)并将它们打印出来,如下所示:

X 平方 = 100,p 值 = 0.0001

我也想单独提取 p 值,但不仅仅是吐出数字,我想要类似的东西:

[1] p 值 = 0.001

[2] p 值 = 0.0001

等等。这可以吗?

最佳答案

附测试数据

set.seed(7)
btcr <- rnorm(100)

您可以使用以下命令执行所有测试

box.test.list <- lapply(1:36, function(i) Box.test(btcr, type = "Ljung", i))

然后将所有结果放入 data.frame 中

results <- data.frame(
  lag = 1:36, 
  xsquared = sapply(box.test.list, "[[", "statistic"), 
  pvalue = sapply(box.test.list, "[[", "p.value")
)

然后你可以对结果做你喜欢的事情

head(results)
#   lag  xsquared     pvalue
# 1   1  3.659102 0.05576369
# 2   2  7.868083 0.01956444
# 3   3  8.822760 0.03174261
# 4   4  9.654935 0.04665920
# 5   5 11.190969 0.04772238
# 6   6 12.607454 0.04971085

关于r - 从具有多个统计测试结果列表的列表中提取统计值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51563815/

相关文章:

在另一个包中导入时 R 包数据不可用

string - 将字符添加到数据集中的字符串子集

c# - 测试 Web 服务流量的免费工具?

在 R 中构建更新数据集后重用 ts 模型(预测包)

r - 与 r 中的缺失或错误组合

python : How to interpret the result of logistic regression by sm. 登录

r - 使用 r 找到双峰分布中的局部最小值

r - 计算 R 数据框中的百分比变化

R - 过滤时间序列

r - 加快预测速度(而不是使用 rollapply)