- Timestamp:
- 10/05/12 11:58:17 (12 years ago)
- Location:
- branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3
- Files:
-
- 11 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Classification/CSV/ClassifiactionCSVInstanceProvider.cs
r8430 r8742 21 21 22 22 using System; 23 using System.Collections; 23 24 using System.Collections.Generic; 25 using System.Globalization; 24 26 using System.IO; 25 27 using System.Linq; 26 28 using System.Text; 29 using HeuristicLab.Common; 27 30 using HeuristicLab.Problems.DataAnalysis; 28 31 … … 61 64 62 65 Dataset dataset = new Dataset(csvFileParser.VariableNames, csvFileParser.Values); 63 string targetVar = csvFileParser.VariableNames.Where(x => dataset.DoubleVariables.Contains(x)).Last(); 64 IEnumerable<string> allowedInputVars = dataset.DoubleVariables.Where(x => !x.Equals(targetVar)); 66 string targetVar = dataset.DoubleVariables.Last(); 65 67 66 ClassificationProblemData claData = new ClassificationProblemData(dataset, allowedInputVars, targetVar); 67 68 int trainingPartEnd = csvFileParser.Rows * 2 / 3; 69 claData.TrainingPartition.Start = 0; 70 claData.TrainingPartition.End = trainingPartEnd; 71 claData.TestPartition.Start = trainingPartEnd; 72 claData.TestPartition.End = csvFileParser.Rows; 73 int pos = path.LastIndexOf('\\'); 74 if (pos < 0) 75 claData.Name = path; 76 else { 77 pos++; 78 claData.Name = path.Substring(pos, path.Length - pos); 68 // turn of input variables that are constant in the training partition 69 var allowedInputVars = new List<string>(); 70 var trainingIndizes = Enumerable.Range(0, (csvFileParser.Rows * 2) / 3); 71 if (trainingIndizes.Count() >= 2) { 72 foreach (var variableName in dataset.DoubleVariables) { 73 if (dataset.GetDoubleValues(variableName, trainingIndizes).Range() > 0 && 74 variableName != targetVar) 75 allowedInputVars.Add(variableName); 76 } 77 } else { 78 allowedInputVars.AddRange(dataset.DoubleVariables.Where(x => x.Equals(targetVar))); 79 79 } 80 80 81 return claData; 81 ClassificationProblemData classificationData = new ClassificationProblemData(dataset, allowedInputVars, targetVar); 82 83 int trainingPartEnd = trainingIndizes.Last(); 84 classificationData.TrainingPartition.Start = trainingIndizes.First(); 85 classificationData.TrainingPartition.End = trainingPartEnd; 86 classificationData.TestPartition.Start = trainingPartEnd; 87 classificationData.TestPartition.End = csvFileParser.Rows; 88 89 classificationData.Name = Path.GetFileName(path); 90 91 return classificationData; 92 } 93 94 public override IClassificationProblemData ImportData(string path, DataAnalysisImportType type) { 95 TableFileParser csvFileParser = new TableFileParser(); 96 csvFileParser.Parse(path); 97 98 int trainingPartEnd = (csvFileParser.Rows * type.Training) / 100; 99 List<IList> values = csvFileParser.Values; 100 if (type.Shuffle) { 101 values = Shuffle(values); 102 } 103 104 Dataset dataset = new Dataset(csvFileParser.VariableNames, values); 105 string targetVar = dataset.DoubleVariables.Last(); 106 107 // turn of input variables that are constant in the training partition 108 var allowedInputVars = new List<string>(); 109 var trainingIndizes = Enumerable.Range(0, trainingPartEnd); 110 foreach (var variableName in dataset.DoubleVariables) { 111 if (trainingIndizes.Count() >= 2 && dataset.GetDoubleValues(variableName, trainingIndizes).Range() > 0 && 112 variableName != targetVar) 113 allowedInputVars.Add(variableName); 114 } 115 116 ClassificationProblemData classificationData = new ClassificationProblemData(dataset, allowedInputVars, targetVar); 117 118 classificationData.TrainingPartition.Start = 0; 119 classificationData.TrainingPartition.End = trainingPartEnd; 120 classificationData.TestPartition.Start = trainingPartEnd; 121 classificationData.TestPartition.End = csvFileParser.Rows; 122 123 classificationData.Name = Path.GetFileName(path); 124 125 return classificationData; 82 126 } 83 127 … … 86 130 } 87 131 public override void ExportData(IClassificationProblemData instance, string path) { 88 StringBuilder strBuilder = new StringBuilder();89 90 foreach (var variable in instance. InputVariables) {91 strBuilder.Append(variable + ";");132 var strBuilder = new StringBuilder(); 133 var colSep = CultureInfo.CurrentCulture.TextInfo.ListSeparator; 134 foreach (var variable in instance.Dataset.VariableNames) { 135 strBuilder.Append(variable.Replace(colSep, String.Empty) + colSep); 92 136 } 93 strBuilder.Remove(strBuilder.Length - 1, 1);137 strBuilder.Remove(strBuilder.Length - colSep.Length, colSep.Length); 94 138 strBuilder.AppendLine(); 95 139 96 Datasetdataset = instance.Dataset;140 var dataset = instance.Dataset; 97 141 98 142 for (int i = 0; i < dataset.Rows; i++) { 99 143 for (int j = 0; j < dataset.Columns; j++) { 100 strBuilder.Append(dataset.GetValue(i, j) + ";"); 144 if (j > 0) strBuilder.Append(colSep); 145 strBuilder.Append(dataset.GetValue(i, j)); 101 146 } 102 strBuilder.Remove(strBuilder.Length - 1, 1);103 147 strBuilder.AppendLine(); 104 148 } 105 149 106 using ( StreamWriter writer = new StreamWriter(path)) {150 using (var writer = new StreamWriter(path)) { 107 151 writer.Write(strBuilder); 108 152 } -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Classification/ClassificationInstanceProvider.cs
r8430 r8742 23 23 24 24 namespace HeuristicLab.Problems.Instances.DataAnalysis { 25 public abstract class ClassificationInstanceProvider : ProblemInstanceProvider<IClassificationProblemData> {25 public abstract class ClassificationInstanceProvider : DataAnalysisInstanceProvider<IClassificationProblemData> { 26 26 } 27 27 } -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Clustering/CSV/ClusteringCSVInstanceProvider.cs
r8211 r8742 21 21 22 22 using System; 23 using System.Collections; 23 24 using System.Collections.Generic; 25 using System.Globalization; 24 26 using System.IO; 27 using System.Linq; 25 28 using System.Text; 29 using HeuristicLab.Common; 26 30 using HeuristicLab.Problems.DataAnalysis; 27 31 … … 56 60 public override IClusteringProblemData ImportData(string path) { 57 61 var csvFileParser = new TableFileParser(); 58 59 62 csvFileParser.Parse(path); 60 63 61 vardataset = new Dataset(csvFileParser.VariableNames, csvFileParser.Values);62 var claData = new ClusteringProblemData(dataset, dataset.DoubleVariables);64 Dataset dataset = new Dataset(csvFileParser.VariableNames, csvFileParser.Values); 65 string targetVar = dataset.DoubleVariables.Last(); 63 66 64 int trainingPartEnd = csvFileParser.Rows * 2 / 3;65 claData.TrainingPartition.Start = 0;66 claData.TrainingPartition.End = trainingPartEnd;67 claData.TestPartition.Start = trainingPartEnd;68 claData.TestPartition.End = csvFileParser.Rows;69 int pos = path.LastIndexOf('\\');70 if (pos < 0)71 claData.Name = path;72 else {73 pos++;74 claData.Name = path.Substring(pos, path.Length - pos);67 // turn of input variables that are constant in the training partition 68 var allowedInputVars = new List<string>(); 69 var trainingIndizes = Enumerable.Range(0, (csvFileParser.Rows * 2) / 3); 70 if (trainingIndizes.Count() >= 2) { 71 foreach (var variableName in dataset.DoubleVariables) { 72 if (dataset.GetDoubleValues(variableName, trainingIndizes).Range() > 0 && 73 variableName != targetVar) 74 allowedInputVars.Add(variableName); 75 } 76 } else { 77 allowedInputVars.AddRange(dataset.DoubleVariables.Where(x => x.Equals(targetVar))); 75 78 } 76 79 77 return claData; 80 ClusteringProblemData clusteringData = new ClusteringProblemData(dataset, allowedInputVars); 81 82 int trainingPartEnd = trainingIndizes.Last(); 83 clusteringData.TrainingPartition.Start = trainingIndizes.First(); 84 clusteringData.TrainingPartition.End = trainingPartEnd; 85 clusteringData.TestPartition.Start = trainingPartEnd; 86 clusteringData.TestPartition.End = csvFileParser.Rows; 87 88 clusteringData.Name = Path.GetFileName(path); 89 90 return clusteringData; 91 } 92 93 public override IClusteringProblemData ImportData(string path, DataAnalysisImportType type) { 94 TableFileParser csvFileParser = new TableFileParser(); 95 csvFileParser.Parse(path); 96 97 List<IList> values = csvFileParser.Values; 98 if (type.Shuffle) { 99 values = Shuffle(values); 100 } 101 102 Dataset dataset = new Dataset(csvFileParser.VariableNames, values); 103 string targetVar = dataset.DoubleVariables.Last(); 104 105 // turn of input variables that are constant in the training partition 106 var allowedInputVars = new List<string>(); 107 int trainingPartEnd = (csvFileParser.Rows * type.Training) / 100; 108 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); 113 } 114 115 ClusteringProblemData clusteringData = new ClusteringProblemData(dataset, allowedInputVars); 116 117 clusteringData.TrainingPartition.Start = 0; 118 clusteringData.TrainingPartition.End = trainingPartEnd; 119 clusteringData.TestPartition.Start = trainingPartEnd; 120 clusteringData.TestPartition.End = csvFileParser.Rows; 121 122 clusteringData.Name = Path.GetFileName(path); 123 124 return clusteringData; 78 125 } 79 126 … … 83 130 public override void ExportData(IClusteringProblemData instance, string path) { 84 131 var strBuilder = new StringBuilder(); 85 86 foreach (var variable in instance. InputVariables) {87 strBuilder.Append(variable + ";");132 var colSep = CultureInfo.CurrentCulture.TextInfo.ListSeparator; 133 foreach (var variable in instance.Dataset.VariableNames) { 134 strBuilder.Append(variable.Replace(colSep, String.Empty) + colSep); 88 135 } 89 strBuilder.Remove(strBuilder.Length - 1, 1);136 strBuilder.Remove(strBuilder.Length - colSep.Length, colSep.Length); 90 137 strBuilder.AppendLine(); 91 138 … … 94 141 for (int i = 0; i < dataset.Rows; i++) { 95 142 for (int j = 0; j < dataset.Columns; j++) { 96 strBuilder.Append(dataset.GetValue(i, j) + ";"); 143 if (j > 0) strBuilder.Append(colSep); 144 strBuilder.Append(dataset.GetValue(i, j)); 97 145 } 98 strBuilder.Remove(strBuilder.Length - 1, 1);99 146 strBuilder.AppendLine(); 100 147 } -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Clustering/ClusteringInstanceProvider.cs
r8192 r8742 23 23 24 24 namespace HeuristicLab.Problems.Instances.DataAnalysis { 25 public abstract class ClusteringInstanceProvider : ProblemInstanceProvider<IClusteringProblemData> {25 public abstract class ClusteringInstanceProvider : DataAnalysisInstanceProvider<IClusteringProblemData> { 26 26 } 27 27 } -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/HeuristicLab.Problems.Instances.DataAnalysis-3.3.csproj
r8430 r8742 98 98 </PropertyGroup> 99 99 <ItemGroup> 100 <Reference Include="HeuristicLab.Collections-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 101 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath> 102 </Reference> 103 <Reference Include="HeuristicLab.Common-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 104 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath> 105 </Reference> 106 <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 107 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath> 108 </Reference> 109 <Reference Include="HeuristicLab.Data-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 110 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath> 111 </Reference> 112 <Reference Include="HeuristicLab.PluginInfrastructure-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 113 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath> 114 </Reference> 115 <Reference Include="HeuristicLab.Problems.Instances-3.3"> 116 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Problems.Instances-3.3.dll</HintPath> 117 </Reference> 118 <Reference Include="HeuristicLab.Random-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 119 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Random-3.3.dll</HintPath> 120 </Reference> 121 <Reference Include="ICSharpCode.SharpZipLib, Version=0.85.4.369, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL"> 100 <Reference Include="HeuristicLab.Collections-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" /> 101 <Reference Include="HeuristicLab.Common-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" /> 102 <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" /> 103 <Reference Include="HeuristicLab.Data-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" /> 104 <Reference Include="HeuristicLab.PluginInfrastructure-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" /> 105 <Reference Include="HeuristicLab.Problems.Instances-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" /> 106 <Reference Include="HeuristicLab.Random-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" /> 107 <Reference Include="ICSharpCode.SharpZipLib"> 108 <HintPath>..\..\HeuristicLab.PluginInfrastructure\3.3\ICSharpCode.SharpZipLib.dll</HintPath> 122 109 <Private>False</Private> 123 110 </Reference> … … 137 124 <Compile Include="Classification\ClassificationInstanceProvider.cs" /> 138 125 <Compile Include="Classification\CSV\ClassifiactionCSVInstanceProvider.cs" /> 139 <Compile Include="Classification\RealWorld\Iris.cs" />140 <Compile Include="Classification\RealWorld\Mammography.cs" />141 <Compile Include="Classification\RealWorld\ClassificationRealWorldInstanceProvider.cs" />142 126 <Compile Include="Classification\ResourceClassificationDataDescriptor.cs" /> 143 127 <Compile Include="Classification\ResourceClassificationInstanceProvider.cs" /> 128 <Compile Include="Classification\UCI\Mammography.cs" /> 129 <Compile Include="Classification\UCI\UCIInstanceProvider.cs" /> 130 <Compile Include="Classification\UCI\Wine.cs" /> 144 131 <Compile Include="Clustering\ClusteringInstanceProvider.cs" /> 145 132 <Compile Include="Clustering\CSV\ClusteringCSVInstanceProvider.cs" /> 133 <Compile Include="DataAnalysisImportType.cs" /> 134 <Compile Include="DataAnalysisInstanceProvider.cs" /> 146 135 <Compile Include="Plugin.cs" /> 147 136 <Compile Include="Properties\AssemblyInfo.cs" /> … … 219 208 </ItemGroup> 220 209 <ItemGroup> 221 <EmbeddedResource Include="Classification\Data\ ClassificationRealWorld.zip" />210 <EmbeddedResource Include="Classification\Data\UCI.zip" /> 222 211 <None Include="HeuristicLab.snk" /> 223 212 <None Include="Plugin.cs.frame" /> … … 234 223 <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 235 224 <PropertyGroup> 236 <PreBuildEvent >set Path=%25Path%25;$(ProjectDir);$(SolutionDir)225 <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir) 237 226 set ProjectDir=$(ProjectDir) 238 227 set SolutionDir=$(SolutionDir) … … 240 229 241 230 call PreBuildEvent.cmd</PreBuildEvent> 231 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' "> 232 export ProjectDir=$(ProjectDir) 233 export SolutionDir=$(SolutionDir) 234 235 $SolutionDir/PreBuildEvent.sh 236 </PreBuildEvent> 242 237 </PropertyGroup> 243 238 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Plugin.cs.frame
r8430 r8742 25 25 [Plugin("HeuristicLab.Problems.Instances.DataAnalysis", "3.3.7.$WCREV$")] 26 26 [PluginFile("HeuristicLab.Problems.Instances.DataAnalysis-3.3.dll", PluginFileType.Assembly)] 27 [PluginDependency("HeuristicLab.Common", "3.3")] 27 28 [PluginDependency("HeuristicLab.Core", "3.3")] 28 29 [PluginDependency("HeuristicLab.Data", "3.3")] -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/CSV/RegressionCSVInstanceProvider.cs
r8430 r8742 21 21 22 22 using System; 23 using System.Collections; 23 24 using System.Collections.Generic; 25 using System.Globalization; 24 26 using System.IO; 25 27 using System.Linq; 26 28 using System.Text; 29 using HeuristicLab.Common; 27 30 using HeuristicLab.Problems.DataAnalysis; 28 31 … … 59 62 60 63 Dataset dataset = new Dataset(csvFileParser.VariableNames, csvFileParser.Values); 61 string targetVar = csvFileParser.VariableNames.Where(x => dataset.DoubleVariables.Contains(x)).Last();64 string targetVar = dataset.DoubleVariables.Last(); 62 65 63 IEnumerable<string> allowedInputVars = dataset.DoubleVariables.Where(x => !x.Equals(targetVar)); 66 // turn of input variables that are constant in the training partition 67 var allowedInputVars = new List<string>(); 68 var trainingIndizes = Enumerable.Range(0, (csvFileParser.Rows * 2) / 3); 69 foreach (var variableName in dataset.DoubleVariables) { 70 if (trainingIndizes.Count() >= 2 && dataset.GetDoubleValues(variableName, trainingIndizes).Range() > 0 && 71 variableName != targetVar) 72 allowedInputVars.Add(variableName); 73 } 64 74 65 IRegressionProblemData reg Data = new RegressionProblemData(dataset, allowedInputVars, targetVar);75 IRegressionProblemData regressionData = new RegressionProblemData(dataset, allowedInputVars, targetVar); 66 76 67 int trainingPartEnd = csvFileParser.Rows * 2 / 3;68 reg Data.TrainingPartition.Start = 0;69 reg Data.TrainingPartition.End = trainingPartEnd;70 reg Data.TestPartition.Start = trainingPartEnd;71 reg Data.TestPartition.End = csvFileParser.Rows;77 var trainingPartEnd = trainingIndizes.Last(); 78 regressionData.TrainingPartition.Start = trainingIndizes.First(); 79 regressionData.TrainingPartition.End = trainingPartEnd; 80 regressionData.TestPartition.Start = trainingPartEnd; 81 regressionData.TestPartition.End = csvFileParser.Rows; 72 82 73 int pos = path.LastIndexOf('\\'); 74 if (pos < 0) 75 regData.Name = path; 76 else { 77 pos++; 78 regData.Name = path.Substring(pos, path.Length - pos); 83 regressionData.Name = Path.GetFileName(path); 84 85 return regressionData; 86 } 87 88 public override IRegressionProblemData ImportData(string path, DataAnalysisImportType type) { 89 TableFileParser csvFileParser = new TableFileParser(); 90 csvFileParser.Parse(path); 91 92 List<IList> values = csvFileParser.Values; 93 if (type.Shuffle) { 94 values = Shuffle(values); 79 95 } 80 return regData; 96 Dataset dataset = new Dataset(csvFileParser.VariableNames, values); 97 string targetVar = dataset.DoubleVariables.Last(); 98 99 // turn of input variables that are constant in the training partition 100 var allowedInputVars = new List<string>(); 101 int trainingPartEnd = (csvFileParser.Rows * type.Training) / 100; 102 trainingPartEnd = trainingPartEnd > 0 ? trainingPartEnd : 1; 103 var trainingIndizes = Enumerable.Range(0, trainingPartEnd); 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))); 112 } 113 114 RegressionProblemData regressionData = new RegressionProblemData(dataset, allowedInputVars, targetVar); 115 116 regressionData.TrainingPartition.Start = 0; 117 regressionData.TrainingPartition.End = trainingPartEnd; 118 regressionData.TestPartition.Start = trainingPartEnd; 119 regressionData.TestPartition.End = csvFileParser.Rows; 120 121 regressionData.Name = Path.GetFileName(path); 122 123 return regressionData; 81 124 } 82 125 … … 85 128 } 86 129 public override void ExportData(IRegressionProblemData instance, string path) { 87 StringBuilder strBuilder = new StringBuilder();88 89 foreach (var variable in instance. InputVariables) {90 strBuilder.Append(variable + ";");130 var strBuilder = new StringBuilder(); 131 var colSep = CultureInfo.CurrentCulture.TextInfo.ListSeparator; 132 foreach (var variable in instance.Dataset.VariableNames) { 133 strBuilder.Append(variable.Replace(colSep, String.Empty) + colSep); 91 134 } 92 strBuilder.Remove(strBuilder.Length - 1, 1);135 strBuilder.Remove(strBuilder.Length - colSep.Length, colSep.Length); 93 136 strBuilder.AppendLine(); 94 137 95 Datasetdataset = instance.Dataset;138 var dataset = instance.Dataset; 96 139 97 140 for (int i = 0; i < dataset.Rows; i++) { 98 141 for (int j = 0; j < dataset.Columns; j++) { 99 strBuilder.Append(dataset.GetValue(i, j) + ";"); 142 if (j > 0) strBuilder.Append(colSep); 143 strBuilder.Append(dataset.GetValue(i, j)); 100 144 } 101 strBuilder.Remove(strBuilder.Length - 1, 1);102 145 strBuilder.AppendLine(); 103 146 } 104 147 105 using ( StreamWriter writer = new StreamWriter(path)) {148 using (var writer = new StreamWriter(path)) { 106 149 writer.Write(strBuilder); 107 150 } -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/RegressionInstanceProvider.cs
r8430 r8742 23 23 24 24 namespace HeuristicLab.Problems.Instances.DataAnalysis { 25 public abstract class RegressionInstanceProvider : ProblemInstanceProvider<IRegressionProblemData> {25 public abstract class RegressionInstanceProvider : DataAnalysisInstanceProvider<IRegressionProblemData> { 26 26 } 27 27 } -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/ValueGenerator.cs
r8430 r8742 23 23 using System.Collections.Generic; 24 24 using System.Linq; 25 using HeuristicLab.Common; 25 26 using HeuristicLab.Random; 26 27 … … 40 41 if (stepWidth <= 0) throw new ArgumentException("stepwith must be larger than zero.", "stepWidth"); 41 42 double x = start; 42 while (x <= end) { 43 // x<=end could skip the last value because of numerical problems 44 while (x < end || x.IsAlmost(end)) { 43 45 yield return x; 44 46 x += stepWidth; -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Various/FriedmanTwo.cs
r7860 r8742 36 36 } 37 37 protected override string TargetVariable { get { return "Y"; } } 38 protected override string[] InputVariables { get { return new string[] { "X1", "X2", "X3", "X4", "X5", " Y" }; } }39 protected override string[] AllowedInputVariables { get { return new string[] { "X1", "X2", "X3", "X4", "X5" }; } }38 protected override string[] InputVariables { get { return new string[] { "X1", "X2", "X3", "X4", "X5", "X6", "X7", "X8", "X9", "X10", "Y" }; } } 39 protected override string[] AllowedInputVariables { get { return new string[] { "X1", "X2", "X3", "X4", "X5", "X6", "X7", "X8", "X9", "X10" }; } } 40 40 protected override int TrainingPartitionStart { get { return 0; } } 41 41 protected override int TrainingPartitionEnd { get { return 5000; } } -
branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.Instances.DataAnalysis/3.3/TableFileParser.cs
r7851 r8742 32 32 namespace HeuristicLab.Problems.Instances.DataAnalysis { 33 33 public class TableFileParser { 34 private const int BUFFER_SIZE = 1024;34 private const int BUFFER_SIZE = 65536; 35 35 private static readonly char[] POSSIBLE_SEPARATORS = new char[] { ',', ';', '\t' }; 36 36 private Tokenizer tokenizer;
Note: See TracChangeset
for help on using the changeset viewer.