pub struct ExponentialDistribution { /* private fields */ }
Expand description
§Description
Methods and properties of exponential distribution.
§Links
- Wikipedia: https://en.wikipedia.org/wiki/Exponential_distribution
- Original Source: N/A
§Examples
use ndarray::{Array1, arr1};
use digifi::utilities::TEST_ACCURACY;
use digifi::statistics::{ProbabilityDistribution, ExponentialDistribution};
let dist: ExponentialDistribution = ExponentialDistribution::new(0.5).unwrap();
let x: Array1<f64> = arr1(&[0.6]);
// PDF test
let pdf_v: f64 = dist.pdf(&x).unwrap()[0];
assert!((pdf_v - 0.37040911034085894).abs() < TEST_ACCURACY);
// CDF test
let cdf_v: f64 = dist.cdf(&x).unwrap()[0];
assert!((cdf_v - 0.2591817793182821).abs() < TEST_ACCURACY);
// Inverse CDF test
let icdf_v: f64 = dist.inverse_cdf(&arr1(&[0.2591817793182821])).unwrap()[0];
assert!((icdf_v - x[0]).abs() < TEST_ACCURACY);
Implementations§
Trait Implementations§
Source§impl Debug for ExponentialDistribution
impl Debug for ExponentialDistribution
Source§impl ProbabilityDistribution for ExponentialDistribution
impl ProbabilityDistribution for ExponentialDistribution
Source§fn pdf(&self, x: &Array1<f64>) -> Result<Array1<f64>, DigiFiError>
fn pdf(&self, x: &Array1<f64>) -> Result<Array1<f64>, DigiFiError>
§Description
Calculates the Probability Density Function (PDF) for an exponential distribution.
§Input
x
: Values at which to calculate the PDF
§Output
- PDF values at the given
x
§Links
- Wikipedia: https://en.wikipedia.org/wiki/Exponential_distribution#Probability_density_function
- Original Source: N/A
Source§fn cdf(&self, x: &Array1<f64>) -> Result<Array1<f64>, DigiFiError>
fn cdf(&self, x: &Array1<f64>) -> Result<Array1<f64>, DigiFiError>
§Description
Computes the Cumulative Distribution Function (CDF) for an exponential distribution.
§Input
x
: Values at which to calculate the CDF
§Output
- CDF values at the given
x
§Links
- Wikipedia: https://en.wikipedia.org/wiki/Exponential_distribution#Cumulative_distribution_function
- Original Source: N/A
Source§fn inverse_cdf(&self, p: &Array1<f64>) -> Result<Array1<f64>, DigiFiError>
fn inverse_cdf(&self, p: &Array1<f64>) -> Result<Array1<f64>, DigiFiError>
Source§fn excess_kurtosis(&self) -> f64
fn excess_kurtosis(&self) -> f64
Description Read more
Auto Trait Implementations§
impl Freeze for ExponentialDistribution
impl RefUnwindSafe for ExponentialDistribution
impl Send for ExponentialDistribution
impl Sync for ExponentialDistribution
impl Unpin for ExponentialDistribution
impl UnwindSafe for ExponentialDistribution
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.