public void SOM_6_columns_iris_0() { InitData_dataset_iris(); //Split last column away from _trainingData double[][] newTrainingData = ArrayManipulation.RemoveLastColumn2D(_trainingData); string [] values = Conversion.ConvertToStringArray(ArrayManipulation.GetLastColAs1DArray(_trainingData)); string[] newAttributeHeaders = ArrayManipulation.RemoveLastColumn1D(_attributeHeaders); BuildSelfOrganizingMap build = new BuildSelfOrganizingMap(); build.SetParameters(4, 4);//, .1, 100, 3); ModelSelfOrganizingMap model = (ModelSelfOrganizingMap)build.BuildModel(newTrainingData, newAttributeHeaders); values = Conversion.ReplaceWithString1D(values, "0", "setosa"); values = Conversion.ReplaceWithString1D(values, "1", "versicolor"); values = Conversion.ReplaceWithString1D(values, "2", "virginica"); string somMap = model.GetPrintedSOMMapWithNameIds(newTrainingData, values); //string valueCompare = "versicolor versicolor setosa setosa \r\n" + // "virginica versicolor versicolor setosa \r\n" + // "virginica virginica virginica virginica \r\n" + // "virginica virginica virginica virginica"; //Using Random init weights is leading to different structure //However the following line should always be there Assert.IsTrue(somMap.Contains("virginica virginica virginica virginica")); }