ndarray
ndarray copied to clipboard
ndarray: an N-dimensional array with array views, multidimensional slicing, and efficient operations
`par_map_collect` is useful, but little messy to use as: ``` ndarray::Zip::from(&array).par_map_collect(|x| ... ) ``` It would be nice to have more `par_map_collect` methods, so that we write as `array.par_map_collect(|x| ...)`.
Doing something like `let xs = Array::zeros((100, 3));`, it's not clear from the API or [documentation for zeros](https://docs.rs/ndarray/latest/ndarray/struct.ArrayBase.html#method.zeros) what the return type is. Ie. are the elements integer, f64, f32...
Is there a reason why `squeeze()` is not provided by the library? Its very useful. I think it can be implemented fairly easily: ```Rust pub trait Squeeze { fn squeeze(self)...
#1042 has added element-wise power methods `powi` and `powf`. But they only accept one parameter. In NumPy, `numpy.power` receives two arrays, `x1` and `x2`. The latter could be a number...
Useful code and benchmarks on floating point accuracy and performance: https://orlp.net/blog/taming-float-sums/ - relevant for numeric-loops subcrate https://github.com/rust-ndarray/ndarray/issues/46#issuecomment-438458138
Allows the creation of arrays up to and including 6 dimensions, and causes a compiler error on 7 or more dimensions. Would close #1252.
### Changes Add the crates `portable-atomic` and `portable-atomic-util` to make the Arc used in the code compatible with the `thumbv6m-none-eabi` target. Also note that this change will probably make `ndarray`...
This takes advantage of const generics to provide general initializers for the statically-dimensioned array types. (2-6 dimensions, with the current implementations). This reduces the reliance on macros for array initialization,...
This is very much a work-in-progress, but I wanted to know how this approach fits with the rest of the codebase. I realise it's not the most "rusty" implementation, but...