- Timestamp:
- 11/07/12 16:28:33 (11 years ago)
- Location:
- trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis
- Property svn:mergeinfo changed
-
trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Clustering/CSV/ClusteringCSVInstanceProvider.cs
r8685 r8877 23 23 using System.Collections; 24 24 using System.Collections.Generic; 25 using System.Globalization;26 25 using System.IO; 27 26 using System.Linq; 28 using System.Text;29 27 using HeuristicLab.Common; 30 28 using HeuristicLab.Problems.DataAnalysis; … … 75 73 } 76 74 } else { 77 allowedInputVars.AddRange(dataset.DoubleVariables.Where(x => x.Equals(targetVar)));75 allowedInputVars.AddRange(dataset.DoubleVariables.Where(x => !x.Equals(targetVar))); 78 76 } 79 77 … … 91 89 } 92 90 93 public override IClusteringProblemData ImportData(string path, DataAnalysisImportType type) { 94 TableFileParser csvFileParser = new TableFileParser(); 95 csvFileParser.Parse(path); 96 91 protected override IClusteringProblemData ImportData(string path, DataAnalysisImportType type, TableFileParser csvFileParser) { 97 92 List<IList> values = csvFileParser.Values; 98 93 if (type.Shuffle) { … … 107 102 int trainingPartEnd = (csvFileParser.Rows * type.Training) / 100; 108 103 var trainingIndizes = Enumerable.Range(0, trainingPartEnd); 109 foreach (var variableName in dataset.DoubleVariables) { 110 if (trainingIndizes.Count() >= 2 && dataset.GetDoubleValues(variableName, trainingIndizes).Range() > 0 && 111 variableName != targetVar) 112 allowedInputVars.Add(variableName); 104 if (trainingIndizes.Count() >= 2) { 105 foreach (var variableName in dataset.DoubleVariables) { 106 if (dataset.GetDoubleValues(variableName, trainingIndizes).Range() > 0 && 107 variableName != targetVar) 108 allowedInputVars.Add(variableName); 109 } 110 } else { 111 allowedInputVars.AddRange(dataset.DoubleVariables.Where(x => !x.Equals(targetVar))); 113 112 } 114 113 … … 124 123 return clusteringData; 125 124 } 126 127 public override bool CanExportData {128 get { return true; }129 }130 public override void ExportData(IClusteringProblemData instance, string path) {131 var strBuilder = new StringBuilder();132 var colSep = CultureInfo.CurrentCulture.TextInfo.ListSeparator;133 foreach (var variable in instance.Dataset.VariableNames) {134 strBuilder.Append(variable.Replace(colSep, String.Empty) + colSep);135 }136 strBuilder.Remove(strBuilder.Length - colSep.Length, colSep.Length);137 strBuilder.AppendLine();138 139 var dataset = instance.Dataset;140 141 for (int i = 0; i < dataset.Rows; i++) {142 for (int j = 0; j < dataset.Columns; j++) {143 if (j > 0) strBuilder.Append(colSep);144 strBuilder.Append(dataset.GetValue(i, j));145 }146 strBuilder.AppendLine();147 }148 149 using (var writer = new StreamWriter(path)) {150 writer.Write(strBuilder);151 }152 }153 125 } 154 126 } -
trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Clustering/ClusteringInstanceProvider.cs
r8598 r8877 23 23 24 24 namespace HeuristicLab.Problems.Instances.DataAnalysis { 25 public abstract class ClusteringInstanceProvider : DataAnalysisInstanceProvider<IClusteringProblemData > {25 public abstract class ClusteringInstanceProvider : DataAnalysisInstanceProvider<IClusteringProblemData, DataAnalysisImportType> { 26 26 } 27 27 }
Note: See TracChangeset
for help on using the changeset viewer.