.suppHyper # very simple:
stopifnot(identical(.suppHyper, ignore.environment = TRUE,
function (m, n, k) max(0, k-n):min(k, m)))
phBall <- phyperAllBin (5,15, 7)
phBalM <- phyperAllBinM(5,15, 7)
stopifnot(identical(
phBall[, colnames(phBalM)] ,
phBalM)
, .suppHyper(5, 15, 7) == 0:5
)
round(phBall, 4)
## relative Error: number of correct digits =
cbind(q = 0:5, round(-log10(abs(1 - phBall / phyper(0:5, 5,15,7))), digits=2))
Run the code above in your browser using DataLab