rendarray-0.2.0-alpha.6 has been yanked.
The ndarray crate provides an N-dimensional container similar to numpy’s
ndarray.
ArrayBase: The N-dimensional array type itself.Array: An array where the data is shared and copy on write, it can act as both an owner of the data as well as a lightweight view.OwnedArray: An array where the data is owned uniquely.ArrayView,ArrayViewMut: Lightweight array views.
Highlights
- Generic N-dimensional array
- General slicing, also with steps > 1, and negative indices to mean elements from the end of the axis.
- There is both an easy to use copy on write array (
Array), or a regular uniquely owned array (OwnedArray), and both can use read-only and read-write array views. - Iteration and most operations are efficient on contiguous c-order arrays (the default layout, without any transposition or discontiguous subslicing).
- Array views can be used to slice and mutate any
[T]data.
Status and Lookout
- Still iterating on the API
- Focus is on being a generic N-dimensional container
- Implements numpy striding and broadcasting
- Arithmetic operations and numerics need a rethink. They are not very well optimized.
- There is experimental bridging to the linear algebra package
rblas.
Crate Feature Flags
assign_ops- Optional, requires nightly
- Enables the compound assignment operators
rustc-serialize- Optional, stable
- Enables serialization support
rblas- Optional, stable
- Enables
rblasintegration