[−][src]Struct ndarray_stats::histogram::strategies::FreedmanDiaconis
Robust (resilient to outliers) strategy that takes into account data variability and data size.
Let n be the number of observations.
bin_width = 2×IQR×n−1/3
The bin width is proportional to the interquartile range (IQR) and inversely proportional to
cube root of n. It can be too conservative for small datasets, but it is quite good for
large datasets.
The IQR is very robust to outliers.
Methods
impl<T> FreedmanDiaconis<T> where
T: Ord + Clone + FromPrimitive + NumOps + Zero, [src]
T: Ord + Clone + FromPrimitive + NumOps + Zero,
Trait Implementations
impl<T> BinsBuildingStrategy for FreedmanDiaconis<T> where
T: Ord + Clone + FromPrimitive + NumOps + Zero, [src]
T: Ord + Clone + FromPrimitive + NumOps + Zero,
type Elem = T
fn from_array<S>(a: &ArrayBase<S, Ix1>) -> Result<Self, BinsBuildError> where
S: Data<Elem = Self::Elem>, [src]
S: Data<Elem = Self::Elem>,
Returns Err(BinsBuildError::Strategy) if IQR==0.
Returns Err(BinsBuildError::EmptyInput) if a.len()==0.
Returns Ok(Self) otherwise.
fn build(&self) -> Bins<T>[src]
fn n_bins(&self) -> usize[src]
impl<T: Debug> Debug for FreedmanDiaconis<T>[src]
Auto Trait Implementations
impl<T> Send for FreedmanDiaconis<T> where
T: Send,
T: Send,
impl<T> Sync for FreedmanDiaconis<T> where
T: Sync,
T: Sync,
impl<T> Unpin for FreedmanDiaconis<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for FreedmanDiaconis<T> where
T: UnwindSafe,
T: UnwindSafe,
impl<T> RefUnwindSafe for FreedmanDiaconis<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
Blanket Implementations
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,