simple-statistics
Version:
30 lines (27 loc) • 1.06 kB
JavaScript
/**
* The [Bernoulli distribution](http://en.wikipedia.org/wiki/Bernoulli_distribution)
* is the probability discrete
* distribution of a random variable which takes value 1 with success
* probability `p` and value 0 with failure
* probability `q` = 1 - `p`. It can be used, for example, to represent the
* toss of a coin, where "1" is defined to mean "heads" and "0" is defined
* to mean "tails" (or vice versa). It is
* a special case of a Binomial Distribution
* where `n` = 1.
*
* @param {number} p input value, between 0 and 1 inclusive
* @returns {number[]} values of bernoulli distribution at this point
* @throws {Error} if p is outside 0 and 1
* @example
* bernoulliDistribution(0.3); // => [0.7, 0.3]
*/
function bernoulliDistribution(p) /*: number[] */ {
// Check that `p` is a valid probability (0 ≤ p ≤ 1)
if (p < 0 || p > 1) {
throw new Error(
"bernoulliDistribution requires probability to be between 0 and 1 inclusive"
);
}
return [1 - p, p];
}
export default bernoulliDistribution;