Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/13/12 15:33:19 (12 years ago)
Author:
sforsten
Message:

#1784:

  • added export button and corrected the LoadData in RegressionInstanceProvider
  • added RegressionProblemView
Location:
branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4

    • Property svn:ignore set to
      Plugin.cs
      bin
      obj
  • branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/Keijzer/KeijzerInstanceProvider.cs

    r7603 r7610  
    2020#endregion
    2121
    22 
    2322using System;
    2423using System.Collections.Generic;
     24
    2525namespace HeuristicLab.Problems.Instances.Regression {
    26   public class KeijzerInstanceProvider : ArtificialRegressionInstanceProvider {
     26  public class KeijzerInstanceProvider : ArtificialRegressionInstanceProvider, IProblemInstanceProvider<RegressionData> {
    2727    public override string Name {
    2828      get { return "Keijzer Benchmark Problems"; }
     
    4343      return descriptorList;
    4444    }
     45
     46    /*#region delete after test
     47    public RegressionData LoadData(IDataDescriptor descriptor) {
     48      throw new NotImplementedException();
     49    }
     50
     51    public RegressionData LoadData(string path) {
     52      TableFileParser csvFileParser = new TableFileParser();
     53      csvFileParser.Parse(path);
     54
     55      RegressionData regData = new RegressionData();
     56      regData.Name = path;
     57      regData.InputVariables = new List<string>(csvFileParser.VariableNames);
     58      regData.TargetVariable = csvFileParser.VariableNames.Last();
     59      //convert to multidimensional array
     60      double[][] values = csvFileParser.Values.Cast<double[]>().ToArray();
     61      regData.Values = new double[values.GetLength(0), values.GetLength(1)];
     62      for (int i = 0; i < values.GetLength(0); i++) {
     63        for (int j = 0; j < values.GetLength(1); j++) {
     64          regData.Values[i, j] = values[i][j];
     65        }
     66      }
     67
     68      int trainingPartEnd = csvFileParser.Rows * 2 / 3;
     69      regData.TrainingPartitionStart = 0;
     70      regData.TrainingPartitionEnd = trainingPartEnd;
     71      regData.TestPartitionStart = trainingPartEnd;
     72      regData.TestPartitionEnd = csvFileParser.Rows;
     73      return regData;
     74    }
     75
     76    public void SaveData(RegressionData instance, string path) {
     77      StringBuilder strBuilder = new StringBuilder();
     78
     79      foreach (var variable in instance.InputVariables) {
     80        strBuilder.Append(variable + ";");
     81      }
     82      strBuilder.Remove(strBuilder.Length - 1, 1);
     83      strBuilder.AppendLine();
     84
     85      double[,] values = instance.Values;
     86
     87      for (int i = 0; i < values.GetLength(0); i++) {
     88        for (int j = 0; j < values.GetLength(1); j++) {
     89          strBuilder.Append(values[i, j] + ";");
     90        }
     91        strBuilder.Remove(strBuilder.Length - 1, 1);
     92        strBuilder.AppendLine();
     93      }
     94
     95      using (StreamWriter writer = new StreamWriter(path)) {
     96        writer.Write(strBuilder);
     97      }
     98    }
     99    #endregion
     100
     101    #region IProblemInstanceProvider<RegressionData> Members
     102
     103    public IProblemInstanceConsumer<RegressionData> Consumer {
     104      get {
     105        return new RegressionProblem();
     106      }
     107      set {
     108        throw new NotImplementedException();
     109      }
     110    }
     111
     112    #endregion       */
    45113  }
    46114}
Note: See TracChangeset for help on using the changeset viewer.