假设我有一个由 PRNG 提供的具有 400,000 行和 20 列的矩阵形式的数据集。每行包含 20 个从 1 到 80 的唯一整数值。我需要检查 PRNG 的正确性。
为此,我将 R 与randtests包一起使用。首先,我将所有数据合并到一个向量中并在其上运行所有测试。然后我分别在每一列上运行每个测试。但是,我得到了类似的结果:第一个值是第一个实验中的 p 值,以下值是第二个实验中的 5 个最小 p 值:
- 巴特尔斯等级检验:0.9091;0.064、0.2218、0.2297、0.2573、0.3964
- Cox Stuart 趋势测试:0.8822;0.0701 0.0905 0.199 0.2407 0.2783
- 差分符号检验:0.7999;0.0153 0.01867 0.0226 0.0283 0.1538
- Wald-Wolfowitz 运行测试:0.9766;0.126 0.1279 0.232 0.2546 0.2705
- 转折点测试:6e-09;0.0037 0.0127 0.0175 0.0322 0.0672
- Mann-Kendall 秩检验:2e-16;1e-06 4e-05 2e-04 3e-04 5e-04
由于 2 次测试失败,我可以得出结论,这些数字不是真正随机的吗?除了运行这个测试,我还能做什么?
这是 .csv 格式数据的链接:第一列表示实验 ID,其他列是结果值。