Expand description

Statistics, Vector Algebra, Information Measures, Matrix Decomposition, Multidimensional Data Analysis, Machine Learning.

Modules

Custom error RError

Vector algebra mutating an f64 vector

Basic statistics on a single generic vector

Vector algebra on two generic vectors

Stats and vector algebra on one or two u8 vectors

Multidimensional operations on sets of vectors

Multidimensional operations on sets of vectors, with additional inputs

Macros

Macro here!() gives &str with the file:line path::function-name of where it was called from.

Structs

Wrapper type for custom conversions to f64

Holds measures of central tendency and spread. For example, geometric mean and standard deviation ratio. Usually some kind of mean and its associated standard deviation.

Median, quartiles, mad (median of absolute diffs)

struct for minimum value, its index, maximum value, its index

Constants

When interpolated, makes following foreground rendering bold blue

When interpolated, makes following foreground rendering bold cyan

When interpolated, makes following foreground rendering bold green

When interpolated, makes following foreground rendering bold magenta

When interpolated, makes following foreground rendering bold red

Returns the terminal rendering to default

When interpolated, makes following foreground rendering bold yellow

Traits

Finding 1D medians, quartiles, and MAD (median of absolute differences)

Mutable operations on one generic slice. A few of the essential Vecg methods are reimplemented here to mutate self. This is for efficiency and convenience. For example, in vector iterative methods.

Trait to serialize slices of generic items &[T] (vectors) and slices of Vecs of generic items &Vec (matrices). All are converted into printable strings and optionally coloured. Also, methods to serialize and render the resulting string in bold ANSI terminal colours.

Statistical measures of a single variable (one generic vector of data) and vector algebra applicable to a single (generic) vector. Thus these methods take no arguments.

Methods applicable to a slice of vectors of generic end type. Operations on a whole set of multidimensional vectors.

Methods applicable to slice of vectors of generic end type, plus one other argument of a similar kind

Vector Algebra on two vectors (represented here as generic slices). Also included are scalar operations on the self vector.

Methods specialised to and more efficient, for &[u8]

Functions

Data of end type i64 has to be explicitly converted to f64 (as f64 does not work). This is to raise awareness that in this conversion, some precision may be lost. This function lossily clone-converts a slice &[i64] to Vec<f64>.

Generates an nxn identity matrix in lower triangular 1d scan form

Translates subscripts to a 1d vector, i.e. natural numbers, to a pair of coordinates within a square lower triangular matrix. Enables memory efficient representation of such matrices as a flat vector.

Sum of natural numbers 1..n. Also the size of an upper or lower triangle of a square array (including the diagonal) to exclude the diagonal, use sumn(n-1)

Type Definitions

Shorthand type for returned errors with message payload