Trait rv::traits::DiscreteDistr[][src]

pub trait DiscreteDistr<X>: Rv<X> + Support<X> {
    fn pmf(&self, x: &X) -> f64 { ... }
fn ln_pmf(&self, x: &X) -> f64 { ... } }

Is a discrete probability distribution

Provided methods

fn pmf(&self, x: &X) -> f64[src]

Probability mass function (PMF) at x

Panics

If x is not supported

Example

The probability of a fair coin coming up heads in 0.5

use rv::dist::Bernoulli;
use rv::traits::DiscreteDistr;

// Fair coin (p = 0.5)
let b = Bernoulli::uniform();

assert!( (b.pmf(&true) - 0.5).abs() < 1E-12);

fn ln_pmf(&self, x: &X) -> f64[src]

Natural logarithm of the probability mass function (PMF)

Panics

If x is not supported

Example

The probability of a fair coin coming up heads in 0.5

use rv::dist::Bernoulli;
use rv::traits::DiscreteDistr;

// Fair coin (p = 0.5)
let b = Bernoulli::uniform();

assert!( (b.ln_pmf(&true) - 0.5_f64.ln()).abs() < 1E-12);
Loading content...

Implementors

impl DiscreteDistr<i8> for BetaBinomial[src]

impl DiscreteDistr<i8> for Binomial[src]

impl DiscreteDistr<i8> for Skellam[src]

impl DiscreteDistr<i16> for BetaBinomial[src]

impl DiscreteDistr<i16> for Binomial[src]

impl DiscreteDistr<i16> for Skellam[src]

impl DiscreteDistr<i32> for BetaBinomial[src]

impl DiscreteDistr<i32> for Binomial[src]

impl DiscreteDistr<i32> for Skellam[src]

impl DiscreteDistr<i64> for BetaBinomial[src]

impl DiscreteDistr<i64> for Binomial[src]

impl DiscreteDistr<u8> for BetaBinomial[src]

impl DiscreteDistr<u8> for Binomial[src]

impl DiscreteDistr<u8> for NegBinomial[src]

impl DiscreteDistr<u8> for Poisson[src]

impl DiscreteDistr<u16> for BetaBinomial[src]

impl DiscreteDistr<u16> for Binomial[src]

impl DiscreteDistr<u16> for NegBinomial[src]

impl DiscreteDistr<u16> for Poisson[src]

impl DiscreteDistr<u32> for BetaBinomial[src]

impl DiscreteDistr<u32> for Binomial[src]

impl DiscreteDistr<u32> for NegBinomial[src]

impl DiscreteDistr<u32> for Poisson[src]

impl DiscreteDistr<u64> for BetaBinomial[src]

impl DiscreteDistr<u64> for Binomial[src]

impl DiscreteDistr<usize> for BetaBinomial[src]

impl DiscreteDistr<usize> for Binomial[src]

impl<Fx, X> DiscreteDistr<X> for Fx where
    Fx: Deref,
    Fx::Target: DiscreteDistr<X>, 
[src]

impl<X> DiscreteDistr<X> for Geometric where
    X: Unsigned + Integer + FromPrimitive + ToPrimitive + Saturating + Bounded
[src]

impl<X, Fx> DiscreteDistr<X> for Mixture<Fx> where
    Fx: Rv<X> + DiscreteDistr<X>, 
[src]

impl<X, T> DiscreteDistr<X> for DiscreteUniform<T> where
    X: Integer + From<T>,
    T: DuParam + SampleUniform + Into<f64>, 
[src]

impl<X: Booleable> DiscreteDistr<X> for Bernoulli[src]

impl<X: CategoricalDatum> DiscreteDistr<X> for Categorical[src]

Loading content...