diff --git a/Cargo.toml b/Cargo.toml index 505419d4..08f1c2ad 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ndarray-stats" -version = "0.1.0" +version = "0.2.0" authors = ["Jim Turner ", "LukeMathWalker "] license = "MIT/Apache-2.0" @@ -20,7 +20,7 @@ noisy_float = "0.1.8" num-integer = "0.1" num-traits = "0.2" rand = "0.6" -itertools = { version = "0.7.0", default-features = false } +itertools = { version = "0.8.0", default-features = false } indexmap = "1.0" [dev-dependencies] diff --git a/README.md b/README.md index fb383c10..54fa5b3d 100644 --- a/README.md +++ b/README.md @@ -6,24 +6,60 @@ [![Crate](https://img.shields.io/crates/v/ndarray-stats.svg)](https://crates.io/crates/ndarray-stats) [![Documentation](https://docs.rs/ndarray-stats/badge.svg)](https://docs.rs/ndarray-stats) -This crate provides statistical methods for [`ndarray`]'s `ArrayBase` type. See -the [documentation](https://docs.rs/ndarray-stats) for more information. +This crate provides statistical methods for [`ndarray`]'s `ArrayBase` type. -[`ndarray`]: https://github.com/bluss/ndarray +Currently available routines include: +- order statistics (minimum, maximum, median, quantiles, etc.); +- summary statistics (mean, skewness, kurtosis, central moments, etc.) +- partitioning; +- correlation analysis (covariance, pearson correlation); +- measures from information theory (entropy, KL divergence, etc.); +- histogram computation. -Only some statistical routines are implemented. Please feel free to contribute -new functionality! +See the [documentation](https://docs.rs/ndarray-stats) for more information. + +Please feel free to contribute new functionality! A roadmap can be found [here](https://github.com/jturner314/ndarray-stats/issues/1). + +[`ndarray`]: https://github.com/rust-ndarray/ndarray ## Using with Cargo ```toml [dependencies] ndarray = "0.12.1" -ndarray-stats = "0.1" +ndarray-stats = "0.2" ``` ## Releases +* **0.2.0** + + * New functionality: + * Summary statistics: + * Harmonic mean + * Geometric mean + * Central moments + * Kurtosis + * Skewness + * Information theory: + * Entropy + * Cross-entropy + * Kullback-Leibler divergence + * Quantiles and order statistics: + * `argmin` / `argmin_skipnan` + * `argmax` / `argmax_skipnan` + * Optimized bulk quantile computation (`quantiles_mut`, `quantiles_axis_mut`) + * Fixes: + * Reduced occurrences of overflow for `interpolate::midpoint` + * Improvements / breaking changes: + * Redesigned error handling across the whole crate, standardising on `Result` + * All `ndarray-stats`' extension traits are now impossible to implement by + users of the library (see [#34]) + + *Contributors*: [@jturner314](https://github.com/jturner314), [@LukeMathWalker](https://github.com/LukeMathWalker), [@phungleson](https://github.com/phungleson), [@munckymagik](https://github.com/munckymagik) + + [#34]: https://github.com/jturner314/ndarray-stats/issues/34 + * **0.1.0** * Initial release by @LukeMathWalker and @jturner314. diff --git a/src/lib.rs b/src/lib.rs index 6a7cdf38..c871bf35 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -2,7 +2,8 @@ //! the *n*-dimensional array data structure provided by [`ndarray`]. //! //! Currently available routines include: -//! - [order statistics] (minimum, maximum, quantiles, etc.); +//! - [order statistics] (minimum, maximum, median, quantiles, etc.); +//! - [summary statistics] (mean, skewness, kurtosis, central moments, etc.) //! - [partitioning]; //! - [correlation analysis] (covariance, pearson correlation); //! - [measures from information theory] (entropy, KL divergence, etc.); @@ -18,6 +19,7 @@ //! [`ndarray`]: https://github.com/rust-ndarray/ndarray //! [order statistics]: trait.QuantileExt.html //! [partitioning]: trait.Sort1dExt.html +//! [summary statistics]: trait.SummaryStatisticsExt.html //! [correlation analysis]: trait.CorrelationExt.html //! [measures from information theory]: trait.EntropyExt.html //! [histogram computation]: histogram/index.html