scipy.special.betaincc#
- scipy.special.betaincc(a, b, x, out=None) = <ufunc 'betaincc'>#
正则不完全贝塔函数的补函数。
计算正则不完全贝塔函数的补函数,定义为 [1]
\[\bar{I}_x(a, b) = 1 - I_x(a, b) = 1 - \frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)} \int_0^x t^{a-1}(1-t)^{b-1}dt,\]对于 \(0 \leq x \leq 1\)。
- 参数:
- a, barray_like
正实数参数
- xarray_like
实数值,满足 \(0 \leq x \leq 1\),积分上限
- outndarray,可选
用于函数值的可选输出数组
- 返回:
- 标量或 ndarray
正则不完全贝塔函数的值
另请参阅
betainc
正则不完全贝塔函数
betaincinv
正则不完全贝塔函数的反函数
betainccinv
正则不完全贝塔函数补函数的反函数
beta
贝塔函数
scipy.stats.beta
贝塔分布
说明
在版本 1.11.0 中添加。
此函数包装了 Boost Math C++ 库中的
ibetac
例程 [2]。参考文献
[1]NIST 数学函数数字图书馆 https://dlmf.nist.gov/8.17
[2]The Boost Developers。“Boost C++ Libraries”。 https://boost.ac.cn/。
示例
>>> from scipy.special import betaincc, betainc
当
betainc(a, b, x)
的值接近 1 时,简单的计算1 - betainc(a, b, x)
会损失精度>>> 1 - betainc(0.5, 8, [0.9, 0.99, 0.999]) array([2.0574632e-09, 0.0000000e+00, 0.0000000e+00])
通过使用
betaincc
,我们可以获得正确的值>>> betaincc(0.5, 8, [0.9, 0.99, 0.999]) array([2.05746321e-09, 1.97259354e-17, 1.96467954e-25])