游程检验

来自决策链云智库
RainW讨论 | 贡献2024年1月23日 (二) 16:07的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
The Run Test.png
节点状态
Windows / Windows 10 Win10及以上可用
V1.0.2部署
游程检验The Run Test.svg
节点开发者决策链算法研发部 (Dev.Team-DPS)
节点英文名The Run Test
功能主类别数据分析
英文缩写TRTest
功能亚类别非参数检验
节点类型数据挖掘
开发语言R
节点简介

游程检验是非参数检验方法之一。根据样本标志表现排列所形成的游程的多少进行判断的检验方法。用于两个独立样本的比较和观测结果随机性的检验测试, 判断观察值的顺序是否随机。

用途:用于检查一个数据序列是否随机的统计方法。

参数:选择连续型或离散型数值变量。

端口数量与逻辑控制(PC)
Input-入口3个
Output-出口3个
Loop-支持循环
If/Switch-支持逻辑判断
输入输出
可生成图片类型(推荐)
可生成数据表类型(推荐)
相关节点
上一节点符号检验
下一节点Fisher精确检验



瓦尔德-沃尔福威茨游程检验(简称游程检验),以统计学家Abraham WaldJacob Wolfowitz的名字命名,是一种非参数统计检验,用于检验二元值数据序列的随机性假设。更具体地说,它可以用来检验假设序列中的元素彼此相互独立

定义

序列中的一次“游程”是由相邻且相等元素组成的序列的最大非空段。例如,长22个元素的序列

+ + + + − − − + + + − − + + + + + + − − − −

包含6个游程,其中3个由“+”组成,另外3个由“−”组成。游程检验基于零假设,即序列中的每个元素都是独立地从同一分布中抽取的。

根据零假设,N个元素序列中的游程数量[note 1]是一个随机变量,其条件分布给定N+个正值[note 2]N个负值(N = N+ + N)近似为正态分布,其参数为:[1][2]

[math]

\begin{align} \text{均值: } & \mu=\frac{2\ N_+\ N_-}{N} + 1, \\[6pt] \text{方差: } & \sigma^2=\frac{2\ N_+\ N_-\ (2\ N_+\ N_--N)}{N^2\ (N-1)}=\frac{(\mu-1)(\mu-2)}{N-1}. \end{align} [/math]

这些参数并不假设正负元素出现的概率相等,而只是假设元素是独立同分布的。如果游程数量显著高于或低于预期,则可能拒绝元素统计独立性的假设。

应用

游程检验可用于检验:

  1. 分布的随机性,通过按给定顺序取数据,并用+标记大于中位数的数据,用-标记小于中位数的数据(等于中位数的数字被省略)。
  2. 一个函数是否适合数据集,通过用+标记超过函数值的数据,用−标记其他数据。对于这种用途,游程检验考虑了符号但没有考虑距离,它与卡方检验互补,后者考虑了距离但没有考虑符号。

相关测试

柯尔莫哥洛夫-斯米尔诺夫检验已被证明在检测仅在位置上不同的分布差异方面比瓦尔德-沃尔福威茨检验更有效。然而,如果分布在方差上有所不同,并且在位置上最多只有微小的差异,则情况恰恰相反。, April 2018 {{citation}}: Cite has empty unknown parameters: |cat2=, |cat-date2=, |cat3=, and |cat-date3= (help); Missing or empty |title= (help); Unknown parameter |cat-date= ignored (help); Unknown parameter |cat= ignored (help)[citation needed]

瓦尔德-沃尔福威茨游程检验已经扩展到适用于多个样本[3][4][5][6]

节点使用的R语言示例代码

游程检验

runs.test(
  y,
  plot.it = FALSE,
  alternative = c("two.sided", "positive.correlated", "negative.correlated")
)

方法参见R package: lawstat的官方文档

节点使用指南

  • 是一种非参数统计检验,用来检测数据序列是否随机,或者是否存在非随机的趋势或模式
  • 通常根据中位数来定义游程,你可以标记所有高于中位数的数据点为"+",低于或等于中位数的为"-"。
  • 如果数据自然分为两组或更多组,游程检验可能不适用

方法选择

  • 无方法选择

参数配置

  • 统计变量:选择一个或多个连续型数值变量,每一个变量做一次游程检
  • 假设检验类型: two.sided是双边检验,negative.correlated和positive.correlated是单边检验
  • 筛选阈值:选择需要的P值阈值,节点会自动将满足阈值的变量筛选出,数据集也会同步筛选出满足的变量。
  • 此算法兼容空值

注意事项

  • 游程检验对异常值敏感,异常值可能会导致错误的结论
  • 当数据量较小时,游程检验的准确性可能会降低。

引用

  1. "Runs Test for Detecting Non-randomness". {{cite web}}: Missing or empty |url= (help)
  2. [ Sample 33092: Wald–Wolfowitz (or runs) test for randomness]
  3. Magel, RC; Wibowo, SH (1997). "Comparing the Powers of the Wald–Wolfowitz and Kolmogorov–Smirnov Tests". Biometrical Journal. 39 (6): 665–675. doi:10.1002/bimj.4710390605.
  4. Barton, DE; David, FN (1957). "Multiple runs". Biometrika. 44 (1–2): 168–178. doi:10.1093/biomet/44.1-2.168.
  5. Sprent P, Smeeton NC (2007) Applied Nonparametric Statistical Methods, pp. 217–219. Boca Raton: Chapman & Hall/ CRC.
  6. Alhakim, A; Hooper, W (2008). "A non-parametric test for several independent samples". Journal of Nonparametric Statistics. 20 (3): 253–261. CiteSeerX 10.1.1.568.6110. doi:10.1080/10485250801976741.


查找其他类别的节点,请参考以下列表