#array #multidimensional-array #ndarray #multidimensional #matrix #statistical-analysis #statistics

ndarray-stats

Statistical routines for ArrayBase, the n-dimensional array data structure provided by ndarray

6 releases (breaking)

0.5.1 Aug 23, 2022
0.5.0 Apr 7, 2021
0.4.0 Dec 14, 2020
0.3.0 Sep 25, 2019
0.1.0 Nov 21, 2018

#50 in Data structures

Download history 11229/week @ 2024-01-03 11437/week @ 2024-01-10 14700/week @ 2024-01-17 12033/week @ 2024-01-24 13653/week @ 2024-01-31 12531/week @ 2024-02-07 14743/week @ 2024-02-14 16574/week @ 2024-02-21 17289/week @ 2024-02-28 17525/week @ 2024-03-06 16445/week @ 2024-03-13 15096/week @ 2024-03-20 14643/week @ 2024-03-27 17788/week @ 2024-04-03 20437/week @ 2024-04-10 19076/week @ 2024-04-17

75,208 downloads per month
Used in 70 crates (52 directly)

MIT/Apache

190KB
3K SLoC

ndarray-stats

Coverage Dependencies status Crate Documentation

This crate provides statistical methods for ndarray's ArrayBase type.

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.);
  • deviation functions (distances, counts, errors, etc.);
  • histogram computation.

See the documentation for more information.

Please feel free to contribute new functionality! A roadmap can be found here.

Using with Cargo

[dependencies]
ndarray = "0.15"
ndarray-stats = "0.5.1"

Releases

  • 0.5.1

    • Fixed bug in implementation of MaybeNaN::remove_nan_mut for f32 and f64 for views with non-standard layouts. Before this fix, the bug could cause incorrect results, buffer overflows, etc., in this method and others which use it. Thanks to @JacekCzupyt for reporting the issue (#89).
    • Minor docs improvements.

    Contributors: @jturner314, @BenMoon

  • 0.5.0

    • Breaking changes
      • Minimum supported Rust version: 1.49.0
      • Updated to ndarray:v0.15.0

    Contributors: @Armavica, @cassiersg

  • 0.4.0

    • Breaking changes
      • Minimum supported Rust version: 1.42.0
    • New functionality:
      • Summary statistics:
        • Weighted variance
        • Weighted standard deviation
    • Improvements / breaking changes:
      • Documentation improvements for Histograms
      • Updated to ndarray:v0.14.0

    Contributors: @munckymagik, @nilgoyette, @LukeMathWalker, @lebensterben, @xd009642

  • 0.3.0

    • Breaking changes
      • Minimum supported Rust version: 1.37
    • New functionality:
      • Deviation functions:
        • Counts equal/unequal
        • l1, l2, linf distances
        • (Root) mean squared error
        • Peak signal-to-noise ratio
      • Summary statistics:
        • Weighted sum
        • Weighted mean
    • Improvements / breaking changes:
      • Updated to ndarray:v0.13.0

    Contributors: @munckymagik, @nilgoyette, @jturner314, @LukeMathWalker

  • 0.2.0

    • Breaking changes
      • All ndarray-stats' extension traits are now impossible to implement by users of the library (see #34)
      • Redesigned error handling across the whole crate, standardising on Result
    • 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

    Contributors: @jturner314, @LukeMathWalker, @phungleson, @munckymagik

  • 0.1.0

    • Initial release by @LukeMathWalker and @jturner314.

Contributing

Please feel free to create issues and submit PRs.

License

Copyright 2018–2022 ndarray-stats developers

Licensed under the Apache License, Version 2.0, or the MIT license, at your option. You may not use this project except in compliance with those terms.

Dependencies

~3MB
~55K SLoC