Struct average::Mean
[−]
[src]
pub struct Mean { /* fields omitted */ }
Estimate the arithmetic mean of a sequence of numbers ("population").
Example
use average::Mean; let a: Mean = (1..6).map(Into::into).collect(); println!("The mean is {}.", a.mean());
Methods
impl Mean
[src]
fn new() -> Mean
[src]
Create a new mean estimator.
fn is_empty(&self) -> bool
[src]
Determine whether the sample is empty.
fn mean(&self) -> f64
[src]
Estimate the mean of the population.
Returns 0 for an empty sample.
fn len(&self) -> u64
[src]
Return the sample size.
Trait Implementations
impl Debug for Mean
[src]
impl Clone for Mean
[src]
fn clone(&self) -> Mean
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Default for Mean
[src]
impl Estimate for Mean
[src]
fn add(&mut self, sample: f64)
[src]
Add an observation sampled from the population.
fn estimate(&self) -> f64
[src]
Estimate the statistic of the population.
impl Merge for Mean
[src]
fn merge(&mut self, other: &Mean)
[src]
Merge another sample into this one.
Example
use average::{Mean, Merge}; let sequence: &[f64] = &[1., 2., 3., 4., 5., 6., 7., 8., 9.]; let (left, right) = sequence.split_at(3); let avg_total: Mean = sequence.iter().map(|x| *x).collect(); let mut avg_left: Mean = left.iter().map(|x| *x).collect(); let avg_right: Mean = right.iter().map(|x| *x).collect(); avg_left.merge(&avg_right); assert_eq!(avg_total.mean(), avg_left.mean());