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: return ZeroDivisionError, "x must be at least 0." return igamc(b, a * x)