/** * Function to create a new classification with the given dataset. * * @param source The dataset. * @param model The model selected to make the classification. * @throws Exception If cannot build the classification. */ public Classification(MyDataset source, Cut model) throws Exception { int index; Itemset itemset; double[] weights; perClassPerValue = new double[model.numSubsets()][0]; perValue = new double[model.numSubsets()]; total = 0; perClass = new double[source.numClasses()]; for (int i = 0; i < model.numSubsets(); i++) perClassPerValue[i] = new double[source.numClasses()]; Enumeration enum2 = source.enumerateItemsets(); while (enum2.hasMoreElements()) { itemset = (Itemset) enum2.nextElement(); index = model.whichSubset(itemset); if (index != -1) add(index, itemset); else { weights = model.weights(itemset); addWeights(itemset, weights); } } }