iterstats

Crates.ioiterstats
lib.rsiterstats
version0.6.0
sourcesrc
created_at2024-10-31 18:28:08.321002
updated_at2024-11-05 19:54:33.076064
descriptionStatistics for rust iterators.
homepagehttps://sr.ht/~ryguy/iterstats/
repositoryhttps://git.sr.ht/~ryguy/iterstats
max_upload_size
id1430431
size89,401
Ryan Crisanti (rcrisanti)

documentation

https://docs.rs/iterstats/

README

iterstats

Statistics for rust iterators.

Extra iterator methods for common statistics operations.

To most easily get the functionality of this crate, import the [Iterstats] trait. See the methods belonging to the trait for all available functionality.

Example

// import the `Iterstats` trait into scope
use iterstats::Iterstats;

// start with your dataset
let data = [1f32, 2., 3., 4.];

// say you want the mean
let mean = data.iter().mean();
assert_eq!(mean, 2.5);

// get the variance
let variance = data.iter().variance();
assert_eq!(variance, 1.25);

// or standard deviation
let stddev = data.iter().stddev();
assert_eq!(stddev, 1.25f32.sqrt());

// or the zscore of each data point
let zscores = data.iter().zscore().collect::<Vec<_>>();
assert_eq!(zscores, vec![-1.3416407, -0.4472136, 0.4472136, 1.3416407]);

Additional

Shoutout to itertools, which was one of the inspirations for this project.

Commit count: 0

cargo fmt