def pdtr(k, m): """Returns sum of left tail of Poisson distribution, 0 through k. See Cephes docs for details. """ if k < 0: raise ValueError("Poisson k must be >= 0.") if m < 0: raise ValueError("Poisson m must be >= 0.") return igamc(k + 1, m)
def chi_high(x, df): """Returns right-hand tail of chi-square distribution (x to infinity). df, the degrees of freedom, ranges from 1 to infinity (assume integers). Typically, df is (r-1)*(c-1) for a r by c table. Result ranges from 0 to 1. See Cephes docs for details. """ x = fix_rounding_error(x) if x < 0: raise ValueError("chi_high: x must be >= 0 (got %s)." % x) if df < 1: raise ValueError("chi_high: df must be >= 1 (got %s)." % df) return igamc(df / 2, x / 2)
def gdtrc(a, b, x): """Returns integral from x to inf of Gamma distribution with params a and b. """ if x < 0.0: raise ZeroDivisionError("x must be at least 0.") return igamc(b, a * x)