Rename trait function

This commit is contained in:
Luis Moreno
2020-11-11 22:08:57 -04:00
parent 900078cb04
commit 49487bccd3
2 changed files with 7 additions and 7 deletions
+5 -5
View File
@@ -3,11 +3,11 @@ use std::collections::HashMap;
use crate::linalg::BaseVector;
pub trait RealNumberVector<T: RealNumber> {
fn unique(&self) -> (Vec<T>, Vec<usize>);
fn unique_with_indices(&self) -> (Vec<T>, Vec<usize>);
}
impl<T: RealNumber, V: BaseVector<T>> RealNumberVector<T> for V {
fn unique(&self) -> (Vec<T>, Vec<usize>) {
fn unique_with_indices(&self) -> (Vec<T>, Vec<usize>) {
let mut unique = self.to_vec();
unique.sort_by(|a, b| a.partial_cmp(b).unwrap());
unique.dedup();
@@ -28,14 +28,14 @@ impl<T: RealNumber, V: BaseVector<T>> RealNumberVector<T> for V {
#[cfg(test)]
mod tests {
use super::RealNumberVector;
use super::*;
#[test]
fn unique() {
fn unique_with_indices() {
let v1 = vec![0.0, 0.0, 1.0, 1.0, 2.0, 0.0, 4.0];
assert_eq!(
(vec!(0.0, 1.0, 2.0, 4.0), vec!(0, 0, 1, 1, 2, 0, 3)),
v1.unique()
v1.unique_with_indices()
);
}
}
+2 -2
View File
@@ -7,8 +7,8 @@ pub fn contingency_matrix<T: RealNumber>(
labels_true: &Vec<T>,
labels_pred: &Vec<T>,
) -> Vec<Vec<usize>> {
let (classes, class_idx) = labels_true.unique();
let (clusters, cluster_idx) = labels_pred.unique();
let (classes, class_idx) = labels_true.unique_with_indices();
let (clusters, cluster_idx) = labels_pred.unique_with_indices();
let mut contingency_matrix = Vec::with_capacity(classes.len());