public static void SaveDataSet(MeteoDataSet dataSet, string path, LabelizationMode labelizationMode) { var groupSize = dataSet.TrainData[0].Inputs.Count; string directoryPart = $@"{path}PreparedData\{groupSize}\Labelization_{labelizationMode.ToString()}\"; string filePart = $"{dataSet.Season.ToString()}_{DS_TYPE}.csv"; var pathToSave = directoryPart + filePart; Directory.CreateDirectory(directoryPart); using (StreamWriter sw = new StreamWriter(pathToSave.Replace(DS_TYPE, "Train"))) { sw.WriteLine(MeteoData.GetHeader(groupSize)); foreach (var gr in dataSet.TrainData) { sw.WriteLine(gr.ToString(labelizationMode)); } } using (StreamWriter sw = new StreamWriter(pathToSave.Replace(DS_TYPE, "Test"))) { sw.WriteLine(MeteoData.GetHeader(groupSize)); foreach (var gr in dataSet.TestData) { sw.WriteLine(gr.ToString(labelizationMode)); } } }
public string ToString(LabelizationMode labelizationMode) { bool labelizeInput = labelizationMode == LabelizationMode.Both || labelizationMode == LabelizationMode.Input; bool labelizeOutput = labelizationMode == LabelizationMode.Both || labelizationMode == LabelizationMode.Output; StringBuilder sb = new StringBuilder(); foreach (var i in Inputs) { sb.Append(i.ToInputString(labelizeInput)); } sb.Append(Output.ToOutputString(labelizeOutput)); return(sb.ToString().TrimEnd(';')); }