Ejemplo n.º 1
0
        public static bool IsDatasetCompatible(IDataAnalysisModel model, IDataset dataset, out string errorMessage)
        {
            if (model == null)
            {
                throw new ArgumentNullException("model", "The provided model is null.");
            }
            if (dataset == null)
            {
                throw new ArgumentNullException("dataset", "The provided dataset is null.");
            }
            errorMessage = string.Empty;

            foreach (var variable in model.VariablesUsedForPrediction)
            {
                if (!dataset.ContainsVariable(variable))
                {
                    if (string.IsNullOrEmpty(errorMessage))
                    {
                        errorMessage = "The following variables must be present in the dataset for model evaluation:";
                    }
                    errorMessage += System.Environment.NewLine + " " + variable;
                }
            }

            return(string.IsNullOrEmpty(errorMessage));
        }
 protected override double Evaluate(IDataAnalysisModel model) {
   var evaluator = EvaluatorParameter.ActualValue;
   var classificationModel = (ISymbolicClassificationModel)model;
   var classificationProblemData = (IClassificationProblemData)ProblemDataParameter.ActualValue;
   var rows = Enumerable.Range(FitnessCalculationPartitionParameter.ActualValue.Start, FitnessCalculationPartitionParameter.ActualValue.Size);
   return evaluator.Evaluate(this.ExecutionContext, classificationModel.SymbolicExpressionTree, classificationProblemData, rows);
 }
        protected override double Evaluate(IDataAnalysisModel model)
        {
            var evaluator                 = EvaluatorParameter.ActualValue;
            var classificationModel       = (ISymbolicClassificationModel)model;
            var classificationProblemData = (IClassificationProblemData)ProblemDataParameter.ActualValue;
            var rows = Enumerable.Range(FitnessCalculationPartitionParameter.ActualValue.Start, FitnessCalculationPartitionParameter.ActualValue.Size);

            return(evaluator.Evaluate(this.ExecutionContext, classificationModel.SymbolicExpressionTree, classificationProblemData, rows));
        }
    public DataAnalysisSolution(IDataAnalysisModel model, IDataAnalysisProblemData problemData)
      : base() {
      name = ItemName;
      description = ItemDescription;
      Add(new Result(ModelResultName, "The data analysis model.", model));
      Add(new Result(ProblemDataResultName, "The data analysis problem data.", problemData));

      problemData.Changed += new EventHandler(ProblemData_Changed);
    }
        public DataAnalysisSolution(IDataAnalysisModel model, IDataAnalysisProblemData problemData)
            : base()
        {
            name        = ItemName;
            description = ItemDescription;
            Add(new Result(ModelResultName, "The data analysis model.", model));
            Add(new Result(ProblemDataResultName, "The data analysis problem data.", problemData));

            problemData.Changed += new EventHandler(ProblemData_Changed);
        }
 protected abstract double Evaluate(IDataAnalysisModel model);
 protected abstract double Evaluate(IDataAnalysisModel model);