離散値の出現順序の独立性を検定する

  • (非負)整数列(ポアソン乱数、負の二項分布乱数など)が生成されたとする。一見、出現する値はバラバラに見えるが、本当にバラバラなのかについて考えたい
  • これは疑似乱数列のランダム性の評価として、様々な方法が提唱されている(たとえばこちら)問題だが、一般に疑似乱数列の評価においては、0,1の列の検定である
  • 整数列であることを利用することにする
  • 整数列であれば、ある値とその次の値との値のペアは整数の組となるから、連続2乱数に関して2元分割表が作れる
  • この分割表の行と列とが独立であるかの検定は、「連続する2乱数間の独立性」の検定に「は」なる
  • 「。。。検定に『は』なる」の『は』とはどういうことかというと、疑似乱数列のランダム性の評価の場合には、連続2乱数の独立性だけではなくて、より大きな周期性が現れないか、など、評価すべき数列のスケールの網羅性も問題とするからである
  • ここでは、連続2乱数間の独立性のみを評価していることから、「必要性」は検定していることになるが、「十分性」は評価していない点に注意したい
  • とはいえ、「必要性」で棄却されるなら、棄却目的にが合致するので、それで目的がある意味では達成できる場合を考えることにする
  • 以下では、整数列のために作られたわけではない、出現順序のランダム性の検定であるruns.test()関数が算出する統計量と、隣接2数の独立性を分割表カイ二乗統計量とを用いることとし、その統計量の帰無分布をパーミュテーション生成してp値を推定してみている
  • 分割表の方でよさそう。。。かな?
  • Rでやってみる