【问题标题】:Jarque Bera Test with NA'sJarque Bera 与 NA 的测试
【发布时间】:2019-07-20 06:19:57
【问题描述】:

我想在大约 200 列的 data.frame 上使用 tseries 包执行 Jarque-Bera 测试,但它不适用于 NA 值。

我的data.frame 看起来像这样:

d1 <- structure(list(Time=structure(17942:17947, class="Date"),
                      x1=c(NA, NA, 17L, 29L, 27L, 10L), 
                      x2=c(30L, 19L, 22L, 20L, 11L, 24L), 
                      x3=c(NA, 23L, 22L, 27L, 21L, 26L), 
                      x4=c(30L, 28L, 23L, 24L, 10L, 17L), 
                      x5=c(12L, 18L, 17L, 16L, 30L, 26L)),
                      row.names=c(NA, 6L), class="data.frame")

输出:

Time x1 x2 x3 x4 x5
1 2019-02-15 NA 30 NA 30 12
2 2019-02-16 NA 19 23 28 18
3 2019-02-17 17 22 22 23 17
4 2019-02-18 29 20 27 24 16
5 2019-02-19 27 11 21 10 30
6 2019-02-20 10 24 26 17 26

我试过了:

library(tseries)
JB <- lapply(2:6, function(i) jarque.bera.test(d1[,i]))

但这给了我以下错误信息:

jarque.bera.test(d1[, i]) 中的错误:x 中的 NAs

还有JB &lt;- lapply(2:6, function(i) jarque.bera.test(d1[,i], na.rm=TRUE)) 也没用。

NA 仅在时间序列的开头。因此,我正在寻找在时间序列开始时忽略 NA 的方法。

谢谢!

【问题讨论】:

    标签: r statistics time-series hypothesis-test


    【解决方案1】:

    您可以尝试使用 DescTools 中的此版本的 Jarque Bera 测试,它允许删除 NA(它是 tseries 包中的 jarque.bera.test 的合并)。

    JarqueBeraTest(x, robust = TRUE, method = c("chisq", "mc"), N = 0, na.rm = FALSE)
    

    在你的情况下:

    lapply(2:6, function(i) DescTools::JarqueBeraTest(x = d1[,i], method="chisq", na.rm=TRUE))
    

    【讨论】:

      【解决方案2】:

      这是使用 R tseries 库的一种可能解决方案:

      library(tseries)
      
      # remove NAs
      d1.cc <- d1[complete.cases(d1),]
      
      # form time series
      d1.cc.ts <- ts(d1.cc)
      
      # run jarque.bera.test
      JB <- lapply(1:nrow(d1.cc), function(i) jarque.bera.test(d1.cc.ts[i,]))
      

      检查JB结果是否合理。

      【讨论】:

        【解决方案3】:

        这里matrixTests 的 Jarque-Berra 实现也很合适:

        col_jarquebera(d1[,-1])
        
           obs   skewness kurtosis df  statistic    pvalue
        x1   4 -0.2686809 1.406646  2 0.47125566 0.7900747
        x2   6 -0.2249531 2.602041  2 0.09019679 0.9559034
        x3   5  0.2436883 1.396859  2 0.58491604 0.7464266
        x4   6 -0.6027177 2.139432  2 0.54841298 0.7601751
        x5   6  0.5090893 1.854664  2 0.58712051 0.7456043
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-12-31
          • 1970-01-01
          • 1970-01-01
          • 2017-06-08
          • 2013-06-11
          • 2018-12-11
          • 1970-01-01
          相关资源
          最近更新 更多