returnString.append(confusionMatrix);
returnString.append("=======================================================\n");
returnString.append("Statistics\n");
returnString.append("-------------------------------------------------------\n");
RunningAverageAndStdDev normStats = confusionMatrix.getNormalizedStats();
returnString.append(StringUtils.rightPad("Kappa", 40)).append(
StringUtils.leftPad(decimalFormatter.format(confusionMatrix.getKappa()), 10)).append('\n');
returnString.append(StringUtils.rightPad("Accuracy", 40)).append(
StringUtils.leftPad(decimalFormatter.format(confusionMatrix.getAccuracy()), 10)).append("%\n");
returnString.append(StringUtils.rightPad("Reliability", 40)).append(
StringUtils.leftPad(decimalFormatter.format(normStats.getAverage() * 100.00000001), 10)).append("%\n");
returnString.append(StringUtils.rightPad("Reliability (standard deviation)", 40)).append(
StringUtils.leftPad(decimalFormatter.format(normStats.getStandardDeviation()), 10)).append('\n');
returnString.append(StringUtils.rightPad("Weighted precision", 40)).append(
StringUtils.leftPad(decimalFormatter.format(confusionMatrix.getWeightedPrecision()), 10)).append('\n');
returnString.append(StringUtils.rightPad("Weighted recall", 40)).append(
StringUtils.leftPad(decimalFormatter.format(confusionMatrix.getWeightedRecall()), 10)).append('\n');
returnString.append(StringUtils.rightPad("Weighted F1 score", 40)).append(