Accord.MachineLearning.BinarySplit.split C# (CSharp) Method

split() private static method

private static split ( double cluster, KMeans kmeans ) : double[][]>.Tuple
cluster double
kmeans KMeans
return double[][]>.Tuple
        private static Tuple<double[][], double[][]> split(double[][] cluster, KMeans kmeans)
        {
            kmeans.Randomize(cluster);

            int[] idx = kmeans.Learn(cluster).Decide(cluster);

            List<double[]> a = new List<double[]>();
            List<double[]> b = new List<double[]>();

            for (int i = 0; i < idx.Length; i++)
            {
                if (idx[i] == 0)
                    a.Add(cluster[i]);
                else
                    b.Add(cluster[i]);
            }

            return Tuple.Create(a.ToArray(), b.ToArray());
        }
    }