public static Statistics printAndReturnStatisticsFrom(String prediction, String truthOrMajority) {
        Statistics statistics = new Statistics();
        for(int index = 0; index < Math.min(prediction.length(), truthOrMajority.length()); index++){
            if((prediction.charAt(index) != DataStreamPatternRecognizer.matchedChar) &&
                    (truthOrMajority.charAt(index) != DataStreamPatternRecognizer.matchedChar))
                statistics.TP++;

            if((truthOrMajority.charAt(index) == DataStreamPatternRecognizer.matchedChar) &&
                    (prediction.charAt(index) != DataStreamPatternRecognizer.matchedChar))
                statistics.FP++;

            if((truthOrMajority.charAt(index) == DataStreamPatternRecognizer.matchedChar) &&
                    (prediction.charAt(index) == DataStreamPatternRecognizer.matchedChar))
                statistics.TN++;

            if((truthOrMajority.charAt(index) != DataStreamPatternRecognizer.matchedChar) &&
                    (prediction.charAt(index) == DataStreamPatternRecognizer.matchedChar))
                statistics.FN++;
        }

        statistics.calculateRates();

//        System.out.println("TP: " + statistics.TP);
//        System.out.println("FP: " + statistics.FP);
//        System.out.println("TN: " + statistics.TN);
//        System.out.println("FN: " + statistics.FN);
//        System.out.println("TPR: " + statistics.TPR);
//        System.out.println("FPR: " + statistics.FPR);
//        System.out.println("TNR: " + statistics.TNR);
//        System.out.println("FNR: " + statistics.FNR + "\n");

        return statistics;
    }