Changeset 15810 for trunk/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionErrorCharacteristicsCurveView.cs
- Timestamp:
- 02/23/18 17:00:43 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionErrorCharacteristicsCurveView.cs
r15789 r15810 164 164 solutionSeries.ChartType = SeriesChartType.FastLine; 165 165 var residuals = GetResiduals(GetOriginalValues(), GetEstimatedValues(solution)); 166 residuals.Remove(double.NaN);167 residuals.Remove(double.NegativeInfinity);168 residuals.Remove(double.PositiveInfinity);169 166 170 167 var maxValue = residuals.Max(); … … 252 249 protected virtual List<double> GetResiduals(IEnumerable<double> originalValues, IEnumerable<double> estimatedValues) { 253 250 switch (residualComboBox.SelectedItem.ToString()) { 254 case "Absolute error": return originalValues.Zip(estimatedValues, (x, y) => Math.Abs(x - y)).ToList(); 255 case "Squared error": return originalValues.Zip(estimatedValues, (x, y) => (x - y) * (x - y)).ToList(); 251 case "Absolute error": return originalValues.Zip(estimatedValues, (x, y) => Math.Abs(x - y)) 252 .Where(r => !double.IsNaN(r) && !double.IsInfinity(r)).ToList(); 253 case "Squared error": return originalValues.Zip(estimatedValues, (x, y) => (x - y) * (x - y)) 254 .Where(r => !double.IsNaN(r) && !double.IsInfinity(r)).ToList(); 256 255 case "Relative error": 257 256 return originalValues.Zip(estimatedValues, (x, y) => x.IsAlmost(0.0) ? -1 : Math.Abs((x - y) / x)) 258 .Where(x => x > 0) // remove entries where the original value is 0259 .ToList();257 .Where(r => r > 0 && !double.IsNaN(r) && !double.IsInfinity(r)) // remove entries where the original value is 0 258 .ToList(); 260 259 default: throw new NotSupportedException(); 261 260 }
Note: See TracChangeset
for help on using the changeset viewer.