Skip to main content

minmax_scale_columns

Function minmax_scale_columns 

Source
pub fn minmax_scale_columns(x: &Tensor) -> Result<Tensor, MattenMlprepError>
Expand description

Scales each column to the [0, 1] range: out[i,j] = (x[i,j] - min_j) / (max_j - min_j).

ยงErrors

use matten::Tensor;
use matten_mlprep::minmax_scale_columns;

// Column 0: [0, 5, 10] -> [0, 0.5, 1].
let x = Tensor::new(vec![0.0, 5.0, 10.0], &[3, 1]);
let s = minmax_scale_columns(&x).unwrap();
assert_eq!(s.as_slice(), &[0.0, 0.5, 1.0]);
Examples found in repository?
examples/minmax_scale.rs (line 8)
6fn main() {
7    let x = Tensor::new(vec![0.0, 100.0, 5.0, 150.0, 10.0, 200.0], &[3, 2]);
8    let s = minmax_scale_columns(&x).expect("two non-constant columns");
9    println!("input  {:?}", x.as_slice());
10    println!("scaled {:?}", s.as_slice());
11}