in bayesmark/quantiles.py [0:0]
def _quantile_CI(n, q, alpha):
# Use in case there is -inf case from being at extreme of distn
idx_lower = np.fmax(0, ss.binom.ppf(alpha / 2.0, n, q)).astype(int)
assert np.all(isclose_lte(ss.binom.cdf(idx_lower - 1, n, q), alpha / 2.0))
assert np.all(isclose_lte(alpha / 2.0, ss.binom.cdf(idx_lower, n, q)))
assert np.all(0 <= idx_lower) and np.all(idx_lower <= n + 1)
idx_upper = np.fmax(0, ss.binom.isf(alpha / 2.0, n, q)).astype(int) + 1
assert np.all(isclose_lte(ss.binom.sf(idx_upper - 1, n, q), alpha / 2.0))
assert np.all(isclose_lte(alpha / 2.0, ss.binom.sf(idx_upper - 2, n, q)))
assert np.all(isclose_lte(1 - (alpha / 2.0), ss.binom.cdf(idx_upper - 1, n, q)))
assert np.all(isclose_lte(ss.binom.cdf(idx_upper - 2, n, q), 1 - (alpha / 2.0)))
assert np.all(0 <= idx_upper) and np.all(idx_upper <= n + 1)
C = ss.binom.cdf(idx_upper - 1, n, q) - ss.binom.cdf(idx_lower - 1, n, q)
assert np.all(isclose_lte(1.0 - alpha, C))
return idx_lower, idx_upper