9 releases (breaking)
0.7.0 | Feb 12, 2024 |
---|---|
0.6.0 | Dec 21, 2023 |
0.5.1 | Dec 19, 2023 |
0.4.2 |
|
0.3.2 | Jul 29, 2022 |
#467 in Math
1,115 downloads per month
Used in coordinates_outliers
15KB
169 lines
SimpleAccumulator
This crate is inspired by Boost::Accumulator which supports incremental statistical computation (online algorithms). This is a work in progress but usable. Please write integration tests before using it in production.
Read Documentation
Notes
- 2023-12-20: Version 0.6 is a major rewrite that fix many embarassing bugs. In 0.6+, we are relying on watermill crate for underlying algorithms.
Usage:
use simple_accumulator::SimpleAccumulator;
fn main() {
let k = [1, 2, 3, 4];
// If second argument is `None` then accumulator stores all the data.
let mut x = SimpleAccumulator::new(&k, Some(10));
println!("{:?}", x);
x.push(5);
println!("{:?}", x);
print!("{}", x.mean());
print!("{}", x.median());
print!("{}", x.variance());
print!("{}", x.sum());
print!("{}", x.kurtosis());
...
}
Dependencies
~1.8–3MB
~59K SLoC