Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/14/18 14:17:31 (5 years ago)
Author:
chaider
Message:

#2966

  • Some renaming and reordering
  • Changed GetVariableRanges method in DatasetUtil
  • Added cases for substract and divide with arity 1
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2966_interval_calculation/HeuristicLab.Problems.DataAnalysis/3.4/DatasetUtil.cs

    r16364 r16383  
    9393    }
    9494
    95     public static Dictionary<string, Interval> GetVariableBoundaries(IDataset dataset, IEnumerable<int> rows = null) {
    96       Dictionary<string, Interval> variableBoundaries = new Dictionary<string, Interval>();
     95    public static Dictionary<string, Interval> GetVariableRanges(IDataset dataset, IEnumerable<int> rows = null) {
     96      Dictionary<string, Interval> variableRanges = new Dictionary<string, Interval>();
    9797
    9898      foreach (var variable in dataset.VariableNames) {
    9999        var min = double.MaxValue;
    100100        var max = double.MinValue;
     101        IEnumerable<double> values = null;
    101102
    102         if (rows != null) {
    103           foreach (int row in rows) {
    104             var val = dataset.GetDoubleValue(variable, row);
    105             if (val < min) min = val;
    106             if (val > max) max = val;
    107           }
    108         } else {
    109           foreach (var val in dataset.GetDoubleValues(variable)) {
    110             if (val < min) min = val;
    111             if (val > max) max = val;
    112           }
     103        if (rows == null) values = dataset.GetDoubleValues(variable);
     104        else values = dataset.GetDoubleValues(variable, rows);
     105
     106        foreach (var val in values) {
     107          if (val < min) min = val;
     108          if (val > max) max = val;
    113109        }
    114         variableBoundaries.Add(variable, new Interval(min, max));
     110
     111        variableRanges.Add(variable, new Interval(min, max));
    115112      }
    116113
    117       return variableBoundaries;
     114      return variableRanges;
    118115    }
    119116
Note: See TracChangeset for help on using the changeset viewer.