@toshiara/special-betaincinv
v1.1.0
Published
inversed incomplete beta function library (commonjs/esm)
Downloads
1
Maintainers
Readme
Inversed incomplete Beta function
Evaluates the inverse of the incomplete beta function
The incomplete beta function is defined as
\mathrm{B}(x; a, b) = \int_0^x t^{a-1}(1-t)^{b-1}\,\mathrm{d}t
The regularized incomplete beta function (or regularized beta function for short) is defined in terms of the incomplete beta function and the complete beta function:
\mathrm{I}_{x}(a, b) = \dfrac{\mathrm{B}(x; a, b)}{\mathrm{B}(a, b)}
This package is a rewrite of ibetainc
function in
jstat
in Typescript.
This package supports both CommonJs and ES Modules.
Installation
$ npm install @toshiara/special-betaincinv
Usage
// for CommonJs
const { betaincinv } = require('@toshiara/special-betaincinv');
// for ES Modules
import { betaincinv } from '@toshiara/special-betaincinv';
betaincinv(p, a, b[, option])
Inverts the regularized incomplete beta function.
Contrary to the more commonly used definition,
in this implementation the first parameter is the probability p
and the second and third parameter are a
and b
.
The function accepts the following option
:
- upper:
boolean
indicating whether to evaluate the lower (false
) or upper (true
) incomplete beta function. Default:false
.
// lower
betaincinv(0.001, 1.1, 2);
// returns 0.0009549886032748866
betaincinv(0.1, 1, 2)
// returns 0.0513167019494862
betaincinv(0.4, 1.5, 2.5)
// returns 0.2904180852037441
betaincinv(0.8, 3, 4)
// returns 0.5853942353021732
betaincinv(0.999, 4.5, 3.5)
// returns 0.9485177162846162
// upper
betaincinv(0.001, 1.1, 2, { upper: true });
// returns 0.9990450113967251
betaincinv(0.1, 1, 2, { upper: true })
// returns 0.9486832980505138
betaincinv(0.4, 1.5, 2.5, { upper: true })
// returns 0.7095819147962559
betaincinv(0.8, 3, 4, { upper: true })
// returns 0.41460576469782684
betaincinv(0.999, 4.5, 3.5, { upper: true })
// returns 0.05148228371538377