in src/main/java/com/twitter/sbf/core/PredictionStat.java [146:168]
public String toString(boolean includeWeights) {
String line1 = String.format(
"Precision: %.2f, Recall: %.2f, F1: %.2f", precision(), recall(), f1()
);
String line2 = String.format(
"Evals: %.0f, Actual Edges: %.0f, Predicted Edges: %.0f, True Positive: %.0f, "
+ "True Negative: %.0f", numEval, numActualPositive, numPredictedPositive, numTruePositive,
numTrueNegative
);
String line3 = "";
String line4 = "";
if (includeWeights) {
line3 = String.format(
"\nActual Edges Weight: %.2f, Predicted Edges Weight: %.2f, True Positive Weight: %.2f",
weightActualPositive, weightPredictedPositive, weightTruePositive
);
line4 = String.format(
"\nWeighted Precision: %.3f, Weighted Recall: %.3f, Weighted F1: %.3f",
weightedPrecision(), weightedRecall(), weightedF1()
);
}
return line1 + "\n" + line2 + line3 + line4;
}