private static void CreateHistogramDataFrame(HistogramData histogramData, List<Metric> metricsList) { try { for (int i = 0; i < metricsList.Count; i++) { if (metricsList[i].GetType() == typeof(SecondTypeErrorProbability)) { if (histogramData.Contains(metricsList[i].Value, METRIC_TYPE.SECOND_TYPE_ERROR)) histogramData.IncrementMetricAmount(metricsList[i].Value, METRIC_TYPE.SECOND_TYPE_ERROR); else histogramData.SecondTypeError.Add(new HistogramDataElement(metricsList[i].Value, 1)); } else if (metricsList[i].GetType() == typeof(FirstTypeErrorProbability)) { if (histogramData.Contains(metricsList[i].Value, METRIC_TYPE.FIRST_TYPE_ERROR)) histogramData.IncrementMetricAmount(metricsList[i].Value, METRIC_TYPE.FIRST_TYPE_ERROR); else histogramData.FirstTypeError.Add(new HistogramDataElement(metricsList[i].Value, 1)); } else if (metricsList[i].GetType() == typeof(MissingProbability)) { if (histogramData.Contains(metricsList[i].Value, METRIC_TYPE.MISSING_ERROR)) histogramData.IncrementMetricAmount(metricsList[i].Value, METRIC_TYPE.MISSING_ERROR); else histogramData.MissingTypeError.Add(new HistogramDataElement(metricsList[i].Value, 1)); } else if (metricsList[i].GetType() == typeof(Precision)) { if (histogramData.Contains(metricsList[i].Value, METRIC_TYPE.PRECISION)) histogramData.IncrementMetricAmount(metricsList[i].Value, METRIC_TYPE.PRECISION); else histogramData.Precision.Add(new HistogramDataElement(metricsList[i].Value, 1)); } else if (metricsList[i].GetType() == typeof(Recall)) { if (histogramData.Contains(metricsList[i].Value, METRIC_TYPE.RECALL)) histogramData.IncrementMetricAmount(metricsList[i].Value, METRIC_TYPE.RECALL); else histogramData.Recall.Add(new HistogramDataElement(metricsList[i].Value, 1)); } else if (metricsList[i].GetType() == typeof(F1Measure)) { if (histogramData.Contains(metricsList[i].Value, METRIC_TYPE.F1_MEASURE)) histogramData.IncrementMetricAmount(metricsList[i].Value, METRIC_TYPE.F1_MEASURE); else histogramData.F1Measure.Add(new HistogramDataElement(metricsList[i].Value, 1)); } } } catch (Exception exception) { throw exception; } }
private static void WriteChartData(HistogramData histogramData, Excel.Worksheet xlWorkSheet) { try { WriteChartDataMetric(histogramData.SecondTypeError, xlWorkSheet, 1, 2); WriteChartDataMetric(histogramData.FirstTypeError, xlWorkSheet, 3, 4); WriteChartDataMetric(histogramData.MissingTypeError, xlWorkSheet, 5, 6); WriteChartDataMetric(histogramData.Precision, xlWorkSheet, 7, 8); WriteChartDataMetric(histogramData.Recall, xlWorkSheet, 9, 10); WriteChartDataMetric(histogramData.F1Measure, xlWorkSheet, 11, 12); } catch (Exception exception) { throw exception; } }
private static HistogramData CreateHistogramData(Dictionary<int, List<Metric>> metrics) { try { HistogramData histogramData = new HistogramData(); foreach (var pair in metrics) CreateHistogramDataFrame(histogramData, pair.Value); return histogramData; } catch (Exception exception) { throw exception; } }