public void SubgroupTest1()
{
Accord.Math.Random.Generator.Seed = 0;
double[] value = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 };
int[] idx = Tools.RandomGroups(value.Length, 4);
double[][] groups = value.Subgroups(idx);
Assert.AreEqual(4, groups.Length);
Assert.AreEqual(3, groups[0].Length);
Assert.AreEqual(4, groups[1].Length);
Assert.AreEqual(3, groups[2].Length);
Assert.AreEqual(3, groups[3].Length);
for (int i = 0; i < groups.Length; i++)
{
for (int j = 0; j < groups[i].Length; j++)
{
double e = groups[i][j];
for (int k = 0; k < groups.Length; k++)
{
for (int l = 0; l < groups[k].Length; l++)
{
double a = groups[k][l];
if (k != i && l != j)
Assert.AreNotEqual(a, l);
}
}
}
}
}