poker.test {randtoolbox} | R Documentation |
The Poker test for testing random number generators.
poker.test(u , nbcard = 5, echo = TRUE)
u |
sample of random numbers in ]0,1[. |
echo |
logical to plot detailed results, default TRUE |
nbcard |
a numeric for the number of cards,
we assume that the length of u is a multiple of nbcard . |
We consider a vector u
, realisation of i.i.d. uniform random
variables U1... Un.
Let us note k the card number (i.e. nbcard
).
The poker test computes a serie of 'hands' in {0, ..., k-1}
from the sample u_i = floor(u_i k) (u
must have a length dividable by k). Let
n_j be the number of 'hands' with (exactly) j different cards. The
probability is
p_j = 1/k^k * k! / (k-j)!) * S_k^j,
where S_k^j denotes the Stirling numbers of the second kind. Finally the chi-squared statistic is
S = sum_{j=1}^k [n_j - np_j/k ]^2/[np_j/k].
a list with the following components :
statistic
the value of the chi-squared statistic.
p.value
the p-value of the test.
observed
the observed counts.
expected
the expected counts under the null hypothesis.
residuals
the Pearson residuals, (observed - expected) / sqrt(expected).
Christophe Dutang.
Planchet F., Jacquemin J. (2003), L'utilisation de methodes de simulation en assurance. Bulletin Francais d'Actuariat, vol. 6, 11, 3-69. (available online)
L'Ecuyer P. (2001), Software for uniform random number generation distinguishing the good and the bad. Proceedings of the 2001 Winter Simulation Conference. (available online)
L'Ecuyer P. (2007), Test U01: a C library for empirical testing of random number generators. ACM Trans. on Mathematical Software 33(4), 22.
other tests of this package freq.test
, serial.test
, gap.test
,
order.test
and coll.test
ks.test
for the Kolmogorov Smirnov test and acf
for
the autocorrelation function.
# (1) hands of 5 'cards' # poker.test(runif(50000)) # (2) hands of 4 'cards' # poker.test(runif(40000), 4) # (3) hands of 42 'cards' # poker.test(runif(420000), 42)