Struct statrs::distribution::ChiSquared
source · pub struct ChiSquared { /* private fields */ }
Expand description
Implements the Chi-squared distribution which is a special case of the Gamma distribution (referenced Here)
Examples
use statrs::distribution::{ChiSquared, Continuous};
use statrs::statistics::Distribution;
use statrs::prec;
let n = ChiSquared::new(3.0).unwrap();
assert_eq!(n.mean().unwrap(), 3.0);
assert!(prec::almost_eq(n.pdf(4.0), 0.107981933026376103901, 1e-15));
Implementations§
source§impl ChiSquared
impl ChiSquared
sourcepub fn new(freedom: f64) -> Result<ChiSquared>
pub fn new(freedom: f64) -> Result<ChiSquared>
Constructs a new chi-squared distribution with freedom
degrees of freedom. This is equivalent to a Gamma distribution
with a shape of freedom / 2.0
and a rate of 0.5
.
Errors
Returns an error if freedom
is NaN
or less than
or equal to 0.0
Examples
use statrs::distribution::ChiSquared;
let mut result = ChiSquared::new(3.0);
assert!(result.is_ok());
result = ChiSquared::new(0.0);
assert!(result.is_err());
sourcepub fn freedom(&self) -> f64
pub fn freedom(&self) -> f64
Returns the degrees of freedom of the chi-squared distribution
Examples
use statrs::distribution::ChiSquared;
let n = ChiSquared::new(3.0).unwrap();
assert_eq!(n.freedom(), 3.0);
Trait Implementations§
source§impl Clone for ChiSquared
impl Clone for ChiSquared
source§fn clone(&self) -> ChiSquared
fn clone(&self) -> ChiSquared
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl ContinuousCDF<f64, f64> for ChiSquared
impl ContinuousCDF<f64, f64> for ChiSquared
source§fn inverse_cdf(&self, p: T) -> K
fn inverse_cdf(&self, p: T) -> K
Due to issues with rounding and floating-point accuracy the default
implementation may be ill-behaved.
Specialized inverse cdfs should be used whenever possible.
Performs a binary search on the domain of
cdf
to obtain an approximation
of F^-1(p) := inf { x | F(x) >= p }
. Needless to say, performance may
may be lacking.source§impl Debug for ChiSquared
impl Debug for ChiSquared
source§impl Distribution<f64> for ChiSquared
impl Distribution<f64> for ChiSquared
source§impl Distribution<f64> for ChiSquared
impl Distribution<f64> for ChiSquared
source§fn sample<R: Rng + ?Sized>(&self, r: &mut R) -> f64
fn sample<R: Rng + ?Sized>(&self, r: &mut R) -> f64
Generate a random value of
T
, using rng
as the source of randomness.source§impl Max<f64> for ChiSquared
impl Max<f64> for ChiSquared
source§impl Median<f64> for ChiSquared
impl Median<f64> for ChiSquared
source§impl Min<f64> for ChiSquared
impl Min<f64> for ChiSquared
source§impl PartialEq<ChiSquared> for ChiSquared
impl PartialEq<ChiSquared> for ChiSquared
source§fn eq(&self, other: &ChiSquared) -> bool
fn eq(&self, other: &ChiSquared) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for ChiSquared
impl StructuralPartialEq for ChiSquared
Auto Trait Implementations§
impl RefUnwindSafe for ChiSquared
impl Send for ChiSquared
impl Sync for ChiSquared
impl Unpin for ChiSquared
impl UnwindSafe for ChiSquared
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.