検定を繰り返したときのことを説明する

  • たくさんのp値を均一分布から発生させる
  • k個のp値の最小値の期待値が\frac{1}{k+1}であることの確認
N<-10000
k<-5
Xs<-matrix(runif(N*k),N,k)
Mins<-apply(Xs,1,min)
mean(Mins)
1/(k+1)
  • k個のp値のうちのi番目に小さい値の期待値が\frac{i}{k+1}であることの確認
N<-1000
k<-10
Xs<-matrix(runif(N*k),N,k)
Sorted<-matrix(apply(Xs,1,sort),N,k,byrow=TRUE)
plot(apply(Sorted,2,mean))
  • 期待値はわかった。では、分布はどうか
doubleSorted<-apply(Sorted,2,sort)
matplot(doubleSorted,type="l")
  • このプロットはこちらこちらの記事を参考にすると乱数を用いずに計算できる