@Override public double scoreSplit(ClassificationCounter a, ClassificationCounter b) { ClassificationCounter parent = ClassificationCounter.merge(a, b); double parentGiniIndex = getGiniIndex(parent); double aGiniIndex = getGiniIndex(a) * a.getTotal() / parent.getTotal(); double bGiniIndex = getGiniIndex(b) * b.getTotal() / parent.getTotal(); return parentGiniIndex - aGiniIndex - bGiniIndex; }