Trait indxvec::Indices[][src]

pub trait Indices {
    fn invindex(self) -> Vec<usize>;
fn complindex(self) -> Vec<usize>;
fn unindex<T: Copy>(self, v: &[T], ascending: bool) -> Vec<T>;
fn ucorrelation(self, v: &[usize]) -> f64;
fn indx_to_f64(self) -> Vec<f64>; }
Expand description

Methods to manipulate indices of Vec<usize> type.

Required methods

Invert an index.

complement of the index - turns ranks from/to ascending/descending

Collect values from v in the order of indices in self.

Pearson’s correlation coefficient of two slices, typically the ranks.

Potentially useful clone-recast of &usize to Vec

Implementations on Foreign Types

Inverts an index, eg. from sort index to ranks. This is a symmetric operation: any even number of applications gives the original index, odd number gives the inverted form.

Collects values from v in the order given by self index. When ascending is false, collects in descending order.
It is used here by msort for ascending or descending sort.

Complement of an index - turns ranks from/to ascending/descending.
.complindex().invindex() applied to sort index makes reversed ranks. .invindex().complindex() applied to sort index makes descending ranks. complindex is symmetric.

Pearson’s correlation coefficient of two $[usize] slices. When the inputs are ranks, then this gives Spearman’s correlation of the original data. However, in general, any other ordinal measures could be deployed (not just the ranks).

Potentially useful clone-recast of &usize to Vec

Implementors