public static void main(String[] args) throws IOException { String inputFile = args[1]; BufferedReader in = new BufferedReader(new FileReader(inputFile)); List<String> symbols = new ArrayList<String>(); String line = in.readLine(); while (line != null) { String[] pieces = line.split(","); if (!symbols.contains(pieces[0])) { symbols.add(pieces[0]); } line = in.readLine(); } ConfusionMatrix x2 = new ConfusionMatrix(symbols, "unknown"); in = new BufferedReader(new FileReader(inputFile)); line = in.readLine(); while (line != null) { String[] pieces = line.split(","); String trueValue = pieces[0]; String estimatedValue = pieces[1]; x2.addInstance(trueValue, estimatedValue); line = in.readLine(); } System.out.printf("%s\n\n", x2.toString()); } }
/** * * @param correctLabel * The correct label * @param classifiedResult * The classified result * @return whether the instance was correct or not */ public boolean addInstance(String correctLabel, ClassifierResult classifiedResult) { boolean result = correctLabel.equals(classifiedResult.getLabel()); if (result) { correctlyClassified++; } else { incorrectlyClassified++; } confusionMatrix.addInstance(correctLabel, classifiedResult); if (classifiedResult.getLogLikelihood() != Double.MAX_VALUE) { summarizer.add(classifiedResult.getLogLikelihood()); hasLL = true; } return result; }
/** * * @param correctLabel * The correct label * @param classifiedResult * The classified result * @return whether the instance was correct or not */ public boolean addInstance(String correctLabel, ClassifierResult classifiedResult) { boolean result = correctLabel.equals(classifiedResult.getLabel()); if (result) { correctlyClassified++; } else { incorrectlyClassified++; } confusionMatrix.addInstance(correctLabel, classifiedResult); if (classifiedResult.getLogLikelihood() != Double.MAX_VALUE) { summarizer.add(classifiedResult.getLogLikelihood()); hasLL = true; } return result; }
/** * * @param correctLabel * The correct label * @param classifiedResult * The classified result * @return whether the instance was correct or not */ public boolean addInstance(String correctLabel, ClassifierResult classifiedResult) { boolean result = correctLabel.equals(classifiedResult.getLabel()); if (result) { correctlyClassified++; } else { incorrectlyClassified++; } confusionMatrix.addInstance(correctLabel, classifiedResult); if (classifiedResult.getLogLikelihood() != Double.MAX_VALUE) { summarizer.add(classifiedResult.getLogLikelihood()); hasLL = true; } return result; }