Warning
This page was created from a pull request.
jax.scipy.special.betainc¶
-
jax.scipy.special.
betainc
(a, b, x)[source]¶ Incomplete beta function.
LAX-backend implementation of
betainc()
. Original docstring below.betainc(x1, x2, x3, /, out=None, *, where=True, casting=’same_kind’, order=’K’, dtype=None, subok=True[, signature, extobj])
betainc(a, b, x, out=None)
Computes the incomplete beta function, defined as 1:
\[I_x(a, b) = \frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)} \int_0^x t^{a-1}(1-t)^{b-1}dt,\]for \(0 \leq x \leq 1\).
- Parameters
b (a,) – Positive, real-valued parameters
x (array-like) – Real-valued such that \(0 \leq x \leq 1\), the upper limit of integration
- Returns
Value of the incomplete beta function
- Return type
array-like
See also
beta()
beta function
betaincinv()
inverse of the incomplete beta function
Notes
The incomplete beta function is also sometimes defined without the gamma terms, in which case the above definition is the so-called regularized incomplete beta function. Under this definition, you can get the incomplete beta function by multiplying the result of the SciPy function by beta.
References
- 1
NIST Digital Library of Mathematical Functions https://dlmf.nist.gov/8.17
Examples
Let \(B(a, b)\) be the beta function.
>>> import scipy.special as sc
The coefficient in terms of gamma is equal to \(1/B(a, b)\). Also, when \(x=1\) the integral is equal to \(B(a, b)\). Therefore, \(I_{x=1}(a, b) = 1\) for any \(a, b\).
>>> sc.betainc(0.2, 3.5, 1.0) 1.0
It satisfies \(I_x(a, b) = x^a F(a, 1-b, a+1, x)/ (aB(a, b))\), where \(F\) is the hypergeometric function hyp2f1:
>>> a, b, x = 1.4, 3.1, 0.5 >>> x**a * sc.hyp2f1(a, 1 - b, a + 1, x)/(a * sc.beta(a, b)) 0.8148904036225295 >>> sc.betainc(a, b, x) 0.8148904036225296
This functions satisfies the relationship \(I_x(a, b) = 1 - I_{1-x}(b, a)\):
>>> sc.betainc(2.2, 3.1, 0.4) 0.49339638807619446 >>> 1 - sc.betainc(3.1, 2.2, 1 - 0.4) 0.49339638807619446