| use std::collections::BTreeMap; |
| use std::fmt; |
| |
| use stats::Distribution; |
| |
| use Estimate; |
| |
| #[derive(Clone, Copy, Eq, Ord, PartialEq, PartialOrd, Deserialize, Serialize, Debug)] |
| pub enum Statistic { |
| Mean, |
| Median, |
| MedianAbsDev, |
| Slope, |
| StdDev, |
| } |
| |
| impl fmt::Display for Statistic { |
| fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { |
| match *self { |
| Statistic::Mean => f.pad("mean"), |
| Statistic::Median => f.pad("median"), |
| Statistic::MedianAbsDev => f.pad("MAD"), |
| Statistic::Slope => f.pad("slope"), |
| Statistic::StdDev => f.pad("SD"), |
| } |
| } |
| } |
| |
| pub(crate) type Estimates = BTreeMap<Statistic, Estimate>; |
| |
| pub(crate) type Distributions = BTreeMap<Statistic, Distribution<f64>>; |