Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/24/12 16:37:40 (12 years ago)
Author:
sforsten
Message:

#1784:

  • deleted ClassificationData and RegressionData. RegressionProblemData and ClassificationProblemData are used instead
  • deleted not needed Transformer
  • ValueGenerator is now a static class and yield return is used return IEnumerable
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblem.cs

    r7758 r7759  
    2020#endregion
    2121
    22 using System;
    23 using System.Collections.Generic;
    24 using System.Linq;
    2522using HeuristicLab.Common;
    2623using HeuristicLab.Core;
     
    3330  [Creatable("Problems")]
    3431  public class ClassificationProblem : DataAnalysisProblem<IClassificationProblemData>, IClassificationProblem, IStorableContent,
    35     IProblemInstanceConsumer<ClassificationData>, IProblemInstanceExporter<ClassificationData> {
     32    IProblemInstanceConsumer<ClassificationProblemData>, IProblemInstanceExporter<ClassificationProblemData> {
    3633    public string Filename { get; set; }
    3734
     
    4643    }
    4744
    48     public void Load(ClassificationData data) {
     45    public void Load(ClassificationProblemData data) {
    4946      Name = data.Name;
    5047      Description = data.Description;
    51       Dataset dataset = new Dataset(data.InputVariables, data.Values);
    52       ProblemData = new ClassificationProblemData(dataset, data.AllowedInputVariables, data.TargetVariable);
    53       ProblemData.TrainingPartition.Start = data.TrainingPartitionStart;
    54       ProblemData.TrainingPartition.End = data.TrainingPartitionEnd;
    55       ProblemData.TestPartition.Start = data.TestPartitionStart;
    56       ProblemData.TestPartition.End = data.TestPartitionEnd;
     48      ProblemData = new ClassificationProblemData(data.Dataset, data.AllowedInputVariables, data.TargetVariable);
     49      ProblemData.TrainingPartition.Start = data.TrainingPartition.Start;
     50      ProblemData.TrainingPartition.End = data.TrainingPartition.End;
     51      ProblemData.TestPartition.Start = data.TestPartition.Start;
     52      ProblemData.TestPartition.End = data.TestPartition.End;
    5753      OnReset();
    5854    }
    5955
    60     public ClassificationData Export() {
    61       if (!ProblemData.InputVariables.Count.Equals(ProblemData.Dataset.DoubleVariables.Count()))
    62         throw new ArgumentException("Not all input variables are double variables! (Export only works with double variables)");
    63 
    64       ClassificationData claData = new ClassificationData();
     56    public ClassificationProblemData Export() {
     57      ClassificationProblemData claData = new ClassificationProblemData(ProblemData.Dataset, ProblemData.AllowedInputVariables, ProblemData.TargetVariable);
    6558      claData.Name = Name;
    6659      claData.Description = Description;
    67       claData.TargetVariable = ProblemData.TargetVariable;
    68       claData.InputVariables = ProblemData.InputVariables.Select(x => x.Value).ToArray();
    69       claData.AllowedInputVariables = ProblemData.AllowedInputVariables.ToArray();
    70       claData.TrainingPartitionStart = ProblemData.TrainingPartition.Start;
    71       claData.TrainingPartitionEnd = ProblemData.TrainingPartition.End;
    72       claData.TestPartitionStart = ProblemData.TestPartition.Start;
    73       claData.TestPartitionEnd = ProblemData.TestPartition.End;
    74 
    75       List<List<double>> data = new List<List<double>>();
    76       foreach (var variable in ProblemData.Dataset.DoubleVariables) {
    77         data.Add(ProblemData.Dataset.GetDoubleValues(variable).ToList());
    78       }
    79       claData.Values = Transformer.Transformation(data);
    80 
     60      claData.TrainingPartition.Start = ProblemData.TrainingPartition.Start;
     61      claData.TrainingPartition.End = ProblemData.TrainingPartition.End;
     62      claData.TestPartition.Start = ProblemData.TestPartition.Start;
     63      claData.TestPartition.End = ProblemData.TestPartition.End;
    8164      return claData;
    8265    }
Note: See TracChangeset for help on using the changeset viewer.