#ndarray #multi-dimensional #rand #random #matrix #uniform-distribution

ndarray-rand

Constructors for randomized arrays. rand integration for ndarray.

18 releases (breaking)

0.15.0 Aug 3, 2024
0.14.0 Mar 27, 2021
0.13.0 Dec 21, 2020
0.12.0 Nov 29, 2020
0.1.0 Mar 29, 2016

#76 in Algorithms

Download history 15285/week @ 2024-07-23 18862/week @ 2024-07-30 19930/week @ 2024-08-06 22589/week @ 2024-08-13 20492/week @ 2024-08-20 19025/week @ 2024-08-27 17737/week @ 2024-09-03 22625/week @ 2024-09-10 17976/week @ 2024-09-17 19756/week @ 2024-09-24 22990/week @ 2024-10-01 20244/week @ 2024-10-08 20072/week @ 2024-10-15 22356/week @ 2024-10-22 19013/week @ 2024-10-29 17186/week @ 2024-11-05

82,014 downloads per month
Used in 173 crates (140 directly)

MIT/Apache

1MB
17K SLoC

ndarray-rand

Constructors for randomized arrays: rand's integration with ndarray.

Example

Generate a 2-dimensional array with shape (2,5) and elements drawn from a uniform distribution over the (0., 10.) interval:

use ndarray::Array;
use ndarray_rand::RandomExt;
use ndarray_rand::rand_distr::Uniform;

fn main() {
    let a = Array::random((2, 5), Uniform::new(0., 10.));
    println!("{:8.4}", a);
    // Example Output:
    // [[  8.6900,   6.9824,   3.8922,   6.5861,   2.4890],
    //  [  0.0914,   5.5186,   5.8135,   5.2361,   3.1879]]
}

Dependencies

ndarray-rand depends on rand.

rand and rand-distr are re-exported as sub-modules, ndarray_rand::rand and ndarray_rand::rand_distr respectively. Please rely on these submodules for guaranteed version compatibility.

If you want to use a random number generator or distribution from another crate with ndarray-rand, you need to make sure that the other crate also depends on the same version of rand. Otherwise, the compiler may return errors saying that the items are not compatible (e.g. that a type doesn't implement a necessary trait).

Recent changes

Check RELEASES.md to see the changes introduced in previous releases.

License

Dual-licensed to be compatible with the Rust project.

Licensed under the Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0 or the MIT license http://opensource.org/licenses/MIT, at your option. This file may not be copied, modified, or distributed except according to those terms.

Dependencies

~1.3–1.8MB
~33K SLoC