Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
08/03/18 10:55:23 (6 years ago)
Author:
fholzing
Message:

#2904: Removed ElementAt

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2904_CalculateImpacts/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionVariableImpactsView.cs

    r16035 r16041  
    165165      //Calculate original quality-values (via calculator, default is R²)
    166166      OnlineCalculatorError error;
    167       IEnumerable<double> targetValuesPartition = rows.Select(v => problemData.TargetVariableValues.ElementAt(v));
    168       IEnumerable<double> estimatedValuesPartition = rows.Select(v => estimatedValues.ElementAt(v));
     167      IEnumerable<double> targetValuesPartition = problemData.Dataset.GetDoubleValues(problemData.TargetVariable, rows);
     168      IEnumerable<double> estimatedValuesPartition = Content.GetEstimatedValues(rows);
     169
    169170      var originalCalculatorValue = RegressionSolutionVariableImpactsCalculator.CalculateVariableImpact(targetValuesPartition, estimatedValuesPartition, out error);
    170171      if (error != OnlineCalculatorError.None) throw new InvalidOperationException("Error during calculation.");
     
    175176        progress.Status = string.Format("Calculating impact for variable {0} ({1} of {2})", variableName, i, count);
    176177
    177         double impact = RegressionSolutionVariableImpactsCalculator.CalculateImpact(variableName, model, modifiableDataset, rows, targetValuesPartition, originalCalculatorValue, replMethod, factorReplMethod);
     178        double impact = 0;
     179        //If the variable isn't used for prediction, it has zero impact.
     180        if (model.VariablesUsedForPrediction.Contains(variableName)) {
     181          impact = RegressionSolutionVariableImpactsCalculator.CalculateImpact(variableName, model, modifiableDataset, rows, targetValuesPartition, originalCalculatorValue, replMethod, factorReplMethod);
     182        }
    178183        impacts.Add(new Tuple<string, double>(variableName, impact));
    179184      }
Note: See TracChangeset for help on using the changeset viewer.