public void test_binarisation_in_instances_builder() { TestingRow[] rows = new[] { new TestingRow { CLASS = 1, ATT_1 = 111, ATT_2 = 222, ATT_3 = 333, ATT_4 = 444, ATT_5 = 555, ATT_6 = 666, ATT_7 = 777, ATT_8 = 888 }, new TestingRow { CLASS = 0, ATT_1 = 1112, ATT_2 = 2222, ATT_3 = 3332, ATT_4 = 4442, ATT_5 = 5552, ATT_6 = 6662, ATT_7 = 7772, ATT_8 = 8882 } }; weka.core.Instances instances = new InstancesBuilder <TestingRow>(rows, 0).Build(); Assert.AreEqual(25, instances.numAttributes()); weka.core.Instance i1 = instances.instance(0); weka.core.Instance i2 = instances.instance(1); // These are the standard properties Assert.AreEqual(1.0, i1.value(0)); Assert.AreEqual(1.0, i1.classValue()); Assert.AreEqual(0.0, i2.value(0)); Assert.AreEqual(0.0, i2.classValue()); Assert.AreEqual(0.0, i1.value(1)); Assert.AreEqual("111", i1.stringValue(1)); Assert.AreEqual(1.0, i2.value(1)); Assert.AreEqual("1112", i2.stringValue(1)); Assert.AreEqual(0.0, i1.value(2)); Assert.AreEqual("222", i1.stringValue(2)); Assert.AreEqual(1.0, i2.value(2)); Assert.AreEqual("2222", i2.stringValue(2)); Assert.AreEqual(0.0, i1.value(3)); Assert.AreEqual("333", i1.stringValue(3)); Assert.AreEqual(1.0, i2.value(3)); Assert.AreEqual("3332", i2.stringValue(3)); Assert.AreEqual(0.0, i1.value(4)); Assert.AreEqual("444", i1.stringValue(4)); Assert.AreEqual(1.0, i2.value(4)); Assert.AreEqual("4442", i2.stringValue(4)); Assert.AreEqual(0.0, i1.value(5)); Assert.AreEqual("555", i1.stringValue(5)); Assert.AreEqual(1.0, i2.value(5)); Assert.AreEqual("5552", i2.stringValue(5)); Assert.AreEqual(0.0, i1.value(6)); Assert.AreEqual("666", i1.stringValue(6)); Assert.AreEqual(1.0, i2.value(6)); Assert.AreEqual("6662", i2.stringValue(6)); Assert.AreEqual(0.0, i1.value(7)); Assert.AreEqual("777", i1.stringValue(7)); Assert.AreEqual(1.0, i2.value(7)); Assert.AreEqual("7772", i2.stringValue(7)); Assert.AreEqual(0.0, i1.value(8)); Assert.AreEqual("888", i1.stringValue(8)); Assert.AreEqual(1.0, i2.value(8)); Assert.AreEqual("8882", i2.stringValue(8)); // These are the new binarized for (int i = 9; i < 25; i += 2) { Assert.AreEqual(1.0, i1.value(i)); Assert.AreEqual(0.0, i2.value(i)); Assert.AreEqual(0.0, i1.value(i + 1)); Assert.AreEqual(1.0, i2.value(i + 1)); } }