Changeset 10189
- Timestamp:
- 12/04/13 14:18:42 (11 years ago)
- Location:
- branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.3
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.3/Implementations/PreprocessingData.cs
r10188 r10189 149 149 } 150 150 151 public IDictionary<string, IEnumerable<int>> GetMissingValueIndices() { 152 var dic = new Dictionary<string, IEnumerable<int>>(); 153 foreach (string variableName in VariableNames) { 154 dic.Add(variableName, GetMissingValueIndices(variableName)); 155 } 156 return dic; 157 } 158 159 public IEnumerable<int> GetMissingValueIndices(string variableName) { 160 if (IsType<double>(variableName)) { 161 return GetValues<double>(variableName).Select((s, i) => new { i, s }).Where(t => double.IsNaN(t.s)).Select(t => t.i); 162 } else if (IsType<string>(variableName)) { 163 return GetValues<string>(variableName).Select((s, i) => new { i, s }).Where(t => string.IsNullOrEmpty(t.s)).Select(t => t.i); 164 } else if (IsType<DateTime>(variableName)) { 165 return GetValues<DateTime>(variableName).Select((s, i) => new { i, s }).Where(t => t.s.Equals(DateTime.MinValue)).Select(t => t.i); 166 } else { 167 throw new ArgumentException("column with index: " + variableName + " contains a non supported type."); 168 } 169 } 170 151 171 #endregion 152 172 } -
branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.3/Implementations/StatisticInfo.cs
r10183 r10189 43 43 44 44 public int GetMissingValueCount(string variableName) { 45 if (preprocessingData.IsType<double>(variableName)) { 46 return preprocessingData.GetValues<double>(variableName).Count(x => double.IsNaN(x)); 47 } else if (preprocessingData.IsType<string>(variableName)) { 48 return preprocessingData.GetValues<string>(variableName).Count(x => string.IsNullOrEmpty(x)); 49 } else if (preprocessingData.IsType<DateTime>(variableName)) { 50 return preprocessingData.GetValues<DateTime>(variableName).Count(x => x.Equals(DateTime.MinValue)); 51 } else { 52 throw new ArgumentException("column with index: " + variableName + " contains a non supported type."); 53 } 45 return preprocessingData.GetMissingValueIndices(variableName).Count(); 54 46 } 55 47 -
branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.3/Interfaces/IPreprocessingData.cs
r10184 r10189 46 46 47 47 void ExportTo(IDataAnalysisProblemData problemData); 48 49 /// <summary> 50 /// Return the indices of the missing values where the key 51 /// correspdonds to the variable name and the values to the row indices 52 /// </summary> 53 /// <returns></returns> 54 IDictionary<string, IEnumerable<int>> GetMissingValueIndices(); 55 56 /// <summary> 57 /// Return the row indices of the cells which contain a missing value 58 /// </summary> 59 /// <returns></returns> 60 IEnumerable<int> GetMissingValueIndices(string variableName); 48 61 } 49 62 }
Note: See TracChangeset
for help on using the changeset viewer.