- Timestamp:
- 06/30/10 10:58:01 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.3/ResultsView.cs
r3916 r3979 30 30 using HeuristicLab.MainForm.WindowsForms; 31 31 using HeuristicLab.Data.Views; 32 using HeuristicLab.Data; 33 using HeuristicLab.Problems.DataAnalysis.Evaluators; 32 34 33 35 namespace HeuristicLab.Problems.DataAnalysis.Views { 34 36 [Content(typeof(DataAnalysisSolution),false)] 35 37 [View("Results View")] 36 public partial class ResultsView : StringConvertibleMatrixView { 38 public partial class ResultsView : AsynchronousContentView { 39 private List<string> rowNames = new List<string>() { "MeanSquaredError", "CoefficientOfDetermination", "MeanAbsolutePercentageError" }; 40 private List<string> columnNames = new List<string>() { "Training", "Test" }; 41 37 42 public ResultsView() { 38 43 InitializeComponent(); … … 43 48 set { base.Content = value; } 44 49 } 50 51 protected override void RegisterContentEvents() { 52 base.RegisterContentEvents(); 53 Content.ModelChanged += new EventHandler(Content_ModelChanged); 54 Content.ProblemDataChanged += new EventHandler(Content_ProblemDataChanged); 55 Content.EstimatedValuesChanged += new EventHandler(Content_EstimatedValuesChanged); 56 } 57 protected override void DeregisterContentEvents() { 58 base.DeregisterContentEvents(); 59 Content.ModelChanged -= new EventHandler(Content_ModelChanged); 60 Content.ProblemDataChanged -= new EventHandler(Content_ProblemDataChanged); 61 Content.EstimatedValuesChanged -= new EventHandler(Content_EstimatedValuesChanged); 62 } 63 64 private void Content_ModelChanged(object sender, EventArgs e) { 65 UpdateView(); 66 } 67 private void Content_ProblemDataChanged(object sender, EventArgs e) { 68 UpdateView(); 69 } 70 private void Content_EstimatedValuesChanged(object sender, EventArgs e) { 71 UpdateView(); 72 } 73 74 protected override void OnContentChanged() { 75 base.OnContentChanged(); 76 UpdateView(); 77 } 78 private void UpdateView() { 79 if (Content != null) { 80 DoubleMatrix matrix = new DoubleMatrix(rowNames.Count, columnNames.Count); 81 matrix.RowNames = rowNames; 82 matrix.ColumnNames = columnNames; 83 matrix.SortableView = false; 84 85 IEnumerable<double> originalTrainingValues = Content.ProblemData.Dataset.GetVariableValues(Content.ProblemData.TargetVariable.Value, Content.ProblemData.TrainingSamplesStart.Value, Content.ProblemData.TrainingSamplesEnd.Value); 86 IEnumerable<double> originalTestValues = Content.ProblemData.Dataset.GetVariableValues(Content.ProblemData.TargetVariable.Value, Content.ProblemData.TestSamplesStart.Value, Content.ProblemData.TestSamplesEnd.Value); 87 matrix[0, 0] = SimpleMSEEvaluator.Calculate(originalTrainingValues, Content.EstimatedTrainingValues); 88 matrix[0, 1] = SimpleMSEEvaluator.Calculate(originalTestValues, Content.EstimatedTestValues); 89 matrix[1, 0] = SimpleRSquaredEvaluator.Calculate(originalTrainingValues, Content.EstimatedTrainingValues); 90 matrix[1, 1] = SimpleRSquaredEvaluator.Calculate(originalTestValues, Content.EstimatedTestValues); 91 matrix[2, 0] = SimpleMeanAbsolutePercentageErrorEvaluator.Calculate(originalTrainingValues, Content.EstimatedTrainingValues); 92 matrix[2, 1] = SimpleMeanAbsolutePercentageErrorEvaluator.Calculate(originalTestValues, Content.EstimatedTestValues); 93 94 matrixView.Content = matrix; 95 } else 96 matrixView.Content = null; 97 } 45 98 } 46 99 }
Note: See TracChangeset
for help on using the changeset viewer.