[][src]Trait mathru::statistics::distrib::Continuous

pub trait Continuous<A, B> {
    fn pdf<'a, 'b>(&'a self, x: A) -> f64;
fn cdf<'a, 'b>(&'a self, x: B) -> f64;
fn quantile<'a, 'b>(&'a self, p: B) -> f64;
fn mean<'a>(&'a self) -> f64;
fn variance<'a>(&'a self) -> f64; }

Continuous distribution

Required methods

fn pdf<'a, 'b>(&'a self, x: A) -> f64

Probability density function

Arguments

*x: random variable

fn cdf<'a, 'b>(&'a self, x: B) -> f64

Cumulative distribution function

Arguments

*x: random variable

fn quantile<'a, 'b>(&'a self, p: B) -> f64

Quantile function, inverse cdf

fn mean<'a>(&'a self) -> f64

Mean

fn variance<'a>(&'a self) -> f64

Variance

Loading content...

Implementors

impl Continuous<f64, f64> for Normal[src]

fn pdf<'a, 'b>(&'a self, x: f64) -> f64[src]

Probability density function

Arguments

  • x: Random variable x ∈ &#x2115

Example

use mathru::statistics::distrib::{Continuous, Normal};

let distrib: Normal = Normal::new(0.3, 0.2);
let x: f64 = 5.0;
let p: f64 = distrib.pdf(x);

fn cdf<'a, 'b>(&'a self, x: f64) -> f64[src]

Cumulative distribution function

Arguments

  • x: Random variable

Example

use mathru::statistics::distrib::{Continuous, Normal};

let distrib: Normal = Normal::new(0.3, 0.2);
let x: f64 = 0.4;
let p: f64 = distrib.cdf(x);

fn quantile<'a>(&'a self, p: f64) -> f64[src]

Quantile: function of inverse cdf

The Percentage Points of the Normal Distribution Author(s): Michael J. Wichura Year 1988 Journal of the Royal Statistical Society 0.0 < p < 1.0

Panics

if p <= 0.0 || p >= 1.0

fn mean<'a>(&'a self) -> f64[src]

Expected value

Example

use mathru;
use mathru::statistics::distrib::{Continuous, Normal};

let distrib: Normal = Normal::new(0.0, 0.2);
let mean: f64 = distrib.mean();

fn variance<'a>(&'a self) -> f64[src]

Variance

Example

use mathru;
use mathru::statistics::distrib::{Continuous, Normal};

let distrib: Normal = Normal::new(0.0, 0.2);
let var: f64 = distrib.variance();

impl Continuous<f64, f64> for Exponential[src]

fn pdf<'a>(&'a self, x: f64) -> f64[src]

Probability density function

Arguments

  • x Random variable x ∈ &#x2115 | x > 0.0

Example

use mathru::statistics::distrib::{Continuous, Exponential};

let distrib: Exponential = Exponential::new(&0.3);
let x: f64 = 5.0;
let p: f64 = distrib.pdf(x);

fn cdf<'a>(&'a self, x: f64) -> f64[src]

Cumulative distribution function

Arguments

  • x Random variable

Example

use mathru::statistics::distrib::{Continuous, Exponential};

let distrib: Exponential = Exponential::new(&0.3);
let x: f64 = 0.4;
let p: f64 = distrib.cdf(x);

fn quantile<'a>(&'a self, p: f64) -> f64[src]

Quantile function of inverse cdf

fn mean<'a>(&'a self) -> f64[src]

Expected value

Example

use mathru::statistics::distrib::{Discrete, Bernoulli};

let distrib: Bernoulli = Bernoulli::new(0.2);
let mean: f64 = distrib.mean();

fn variance<'a>(&'a self) -> f64[src]

Variance

Example

use mathru::statistics::distrib::{Discrete, Bernoulli};

let distrib: Bernoulli = Bernoulli::new(0.2);
let var: f64 = distrib.variance();

impl Continuous<f64, f64> for ChiSquared[src]

fn pdf<'a>(&'a self, x: f64) -> f64[src]

Probability density function

Arguments

  • x Random variable x ∈ &#x2115

Example

use mathru::statistics::distrib::{Continuous, ChiSquared};

let distrib: ChiSquared = ChiSquared::new(&2);
let x: f64 = 5.0;
let p: f64 = distrib.pdf(x);

fn cdf<'a>(&'a self, x: f64) -> f64[src]

Cumulative distribution function

Arguments

  • x Random variable

Example

use mathru::statistics::distrib::{Continuous, ChiSquared};

let distrib: ChiSquared = ChiSquared::new(&3);
let x: f64 = 0.4;
let p: f64 = distrib.cdf(x);

fn quantile<'a, 'b>(&'a self, p: f64) -> f64[src]

Quantile function of inverse cdf

fn mean<'a>(&'a self) -> f64[src]

Expected value

Example

use mathru::statistics::distrib::{Discrete, Bernoulli};

let distrib: Bernoulli = Bernoulli::new(0.2);
let mean: f64 = distrib.mean();

fn variance<'a>(&'a self) -> f64[src]

Variance

Example

use mathru::statistics::distrib::{Discrete, Bernoulli};

let distrib: Bernoulli = Bernoulli::new(0.2);
let var: f64 = distrib.variance();

impl Continuous<f64, f64> for Beta[src]

fn pdf<'a>(&'a self, x: f64) -> f64[src]

Probability density function

Arguments

  • x Random variable x &isin ࡃ

Example

use mathru::statistics::distrib::{Continuous, Beta};

let distrib: Beta = Beta::new(&0.2, &0.3);
let x: f64 = 0.5;
let p: f64 = distrib.pdf(x);

fn cdf<'a>(&'a self, x: f64) -> f64[src]

Cumulative distribution function

Arguments

  • x Random variable

Example

use mathru::statistics::distrib::{Continuous, Beta};

let distrib: Beta = Beta::new(&0.3, &0.2);
let x: f64 = 0.4;
let p: f64 = distrib.cdf(x);

fn quantile<'a, 'b>(&'a self, _p: f64) -> f64[src]

Quantile function of inverse cdf

fn mean<'a>(&'a self) -> f64[src]

Expected value

Example

use mathru::statistics::distrib::{Continuous, Beta};

let distrib: Beta = Beta::new(&0.2, &0.3);
let mean: f64 = distrib.mean();

fn variance<'a>(&'a self) -> f64[src]

Variance

Example

use mathru::statistics::distrib::{Continuous, Beta};

let distrib: Beta = Beta::new(&0.2, &0.3);
let var: f64 = distrib.variance();

impl Continuous<f64, f64> for Gamma[src]

fn pdf<'a>(&'a self, x: f64) -> f64[src]

Probability density function

Arguments

  • x Random variable x ∈ &#x2115 | x > 0.0

Panics

if x <= 0.0

Example

use mathru::statistics::distrib::{Continuous, Gamma};

let distrib: Gamma = Gamma::new(0.3, 0.2);
let x: f64 = 5.0;
let p: f64 = distrib.pdf(x);

fn cdf<'a>(&'a self, x: f64) -> f64[src]

Cumulative distribution function

Arguments

  • x Random variable

Example

use mathru::statistics::distrib::{Continuous, Gamma};

let distrib: Gamma = Gamma::new(0.3, 0.2);
let x: f64 = 0.4;
let p: f64 = distrib.cdf(x);

fn quantile<'a, 'b>(&'a self, _p: f64) -> f64[src]

Quantile function of inverse cdf

fn mean<'a>(&'a self) -> f64[src]

Expected value

fn variance<'a>(&'a self) -> f64[src]

Variance

Example

use mathru::statistics::distrib::{Continuous, Gamma};

let distrib: Gamma = Gamma::new(0.2, 0.5);
let var: f64 = distrib.variance();

impl Continuous<f64, f64> for T[src]

fn pdf<'a>(&'a self, x: f64) -> f64[src]

Probability density function

Arguments

  • x Random variable x &isin ࡃ

Example

use mathru::statistics::distrib::{Continuous, T};

let distrib: T = T::new(1.2);
let x: f64 = 0.5;
let p: f64 = distrib.pdf(x);

fn cdf<'a>(&'a self, x: f64) -> f64[src]

Cumulative distribution function

Arguments

  • x Random variable

Example

use mathru::statistics::distrib::{Continuous, T};

let distrib: T = T::new(1.3);
let x: f64 = 0.4;
let p: f64 = distrib.cdf(x);

fn quantile<'a, 'b>(&'a self, _p: f64) -> f64[src]

Quantile function of inverse cdf

fn mean<'a>(&'a self) -> f64[src]

Expected value

Panics

if self.n <= 1.0

Example

use mathru::statistics::distrib::{Continuous, T};

let distrib: T = T::new(1.2);
let mean: f64 = distrib.mean();

fn variance<'a>(&'a self) -> f64[src]

Variance

Example

use mathru::statistics::distrib::{Continuous, T};

let distrib: T = T::new(2.2);
let var: f64 = distrib.variance();

impl Continuous<f64, f64> for RaisedCosine[src]

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

Probability density function

Arguments

  • x Random variable x

Panics

Example

use mathru::statistics::distrib::{Continuous, RaisedCosine};

let distrib: RaisedCosine = RaisedCosine::new(-1.2, 1.5);
let x: f64 = 5.0;
let p: f64 = distrib.pdf(x);

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

Cumulative distribution function

Arguments

Example

use mathru::statistics::distrib::{Continuous, RaisedCosine};
use std::f64::consts::PI;

let distrib: RaisedCosine = RaisedCosine::new(1.0, PI);
let x: f64 = PI/2.0;
let p: f64 = distrib.cdf(x);

fn quantile<'a, 'b>(&'a self, _p: f64) -> f64[src]

Quantile function of inverse cdf

fn mean<'a>(&'a self) -> f64[src]

Expected value

Example

use mathru::statistics::distrib::{Continuous, RaisedCosine};

let distrib: RaisedCosine = RaisedCosine::new(-2.0, 0.5);
let mean: f64 = distrib.mean();

fn variance(&self) -> f64[src]

Variance

Example

use mathru::statistics::distrib::{Continuous, RaisedCosine};
use std::f64::consts::PI;

let distrib: RaisedCosine = RaisedCosine::new(2.0, PI);
let var: f64 = distrib.variance();

impl Continuous<f64, f64> for Uniform[src]

fn pdf<'a>(&'a self, x: f64) -> f64[src]

Probability density function

Arguments

x: random variable

Example

use mathru::statistics::distrib::{Continuous, Uniform};

let distrib: Uniform = Uniform::new(-0.1, 0.3);
let x: f64 = 5.0;
let p: f64 = distrib.pdf(x);

fn cdf<'a>(&'a self, x: f64) -> f64[src]

Cumulative distribution function

Arguments

  • x Random variable

Example

use mathru::statistics::distrib::{Continuous, Uniform};

let distrib: Uniform = Uniform::new(0.0, 0.5);
let x: f64 = 0.3;
let p: f64 = distrib.cdf(x);

fn quantile<'a, 'b>(&'a self, _p: f64) -> f64[src]

Quantile function of inverse cdf

fn variance<'a>(&'a self) -> f64[src]

Variance

Example

use mathru::statistics::distrib::{Continuous, Uniform};

let distrib: Uniform = Uniform::new(0.2, 0.5);
let var: f64 = distrib.variance();
Loading content...