pub fn shuffle_split( x: &Matrix, y: &Vector, train_perc: f64, seed: i32, ) -> (Matrix, Vector, Matrix, Vector)