Changeset 13935 for trunk/sources/HeuristicLab.DataPreprocessing
- Timestamp:
- 06/24/16 14:00:28 (8 years ago)
- Location:
- trunk/sources/HeuristicLab.DataPreprocessing/3.4/Logic
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.DataPreprocessing/3.4/Logic/ManipulationLogic.cs
r13508 r13935 85 85 foreach (var column in cells) { 86 86 if (preprocessingData.VariableHasType<double>(column.Key)) { 87 double max = statisticsLogic.GetMax<double>(column.Key, considerSelection);88 double min = statisticsLogic.GetMin<double>(column.Key, considerSelection);87 double max = statisticsLogic.GetMax<double>(column.Key, double.NaN, considerSelection); 88 double min = statisticsLogic.GetMin<double>(column.Key, double.NaN, considerSelection); 89 89 double randMultiplier = (max - min); 90 90 foreach (int index in column.Value) { … … 93 93 } 94 94 } else if (preprocessingData.VariableHasType<DateTime>(column.Key)) { 95 DateTime min = statisticsLogic.GetMin<DateTime>(column.Key, considerSelection);96 DateTime max = statisticsLogic.GetMax<DateTime>(column.Key, considerSelection);95 DateTime min = statisticsLogic.GetMin<DateTime>(column.Key, DateTime.MinValue, considerSelection); 96 DateTime max = statisticsLogic.GetMax<DateTime>(column.Key, DateTime.MinValue, considerSelection); 97 97 double randMultiplier = (max - min).TotalSeconds; 98 98 foreach (int index in column.Value) { … … 213 213 foreach (var column in cells) { 214 214 if (preprocessingData.VariableHasType<double>(column.Key)) { 215 ReplaceIndicesByValue<double>(column.Key, column.Value, statisticsLogic.GetMostCommonValue<double>(column.Key, considerSelection));215 ReplaceIndicesByValue<double>(column.Key, column.Value, statisticsLogic.GetMostCommonValue<double>(column.Key, double.NaN, considerSelection)); 216 216 } else if (preprocessingData.VariableHasType<string>(column.Key)) { 217 ReplaceIndicesByValue<string>(column.Key, column.Value, statisticsLogic.GetMostCommonValue<string>(column.Key, considerSelection));217 ReplaceIndicesByValue<string>(column.Key, column.Value, statisticsLogic.GetMostCommonValue<string>(column.Key, string.Empty, considerSelection)); 218 218 } else if (preprocessingData.VariableHasType<DateTime>(column.Key)) { 219 ReplaceIndicesByValue<DateTime>(column.Key, column.Value, statisticsLogic.GetMostCommonValue<DateTime>(column.Key, considerSelection));219 ReplaceIndicesByValue<DateTime>(column.Key, column.Value, statisticsLogic.GetMostCommonValue<DateTime>(column.Key, DateTime.MinValue, considerSelection)); 220 220 } else { 221 221 throw new ArgumentException("column with index: " + column.Key + " contains a non supported type."); -
trunk/sources/HeuristicLab.DataPreprocessing/3.4/Logic/StatisticsLogic.cs
r13934 r13935 71 71 } 72 72 73 public T GetMin<T>(int columnIndex, bool considerSelection = false) where T : IComparable<T> {74 var min = default (T);73 public T GetMin<T>(int columnIndex, T defaultValue, bool considerSelection = false) where T : IComparable<T> { 74 var min = defaultValue; 75 75 if (preprocessingData.VariableHasType<T>(columnIndex)) { 76 76 var values = GetValuesWithoutNaN<T>(columnIndex, considerSelection); … … 82 82 } 83 83 84 public T GetMax<T>(int columnIndex, bool considerSelection = false) where T : IComparable<T> {85 var max = default (T);84 public T GetMax<T>(int columnIndex, T defaultValue, bool considerSelection = false) where T : IComparable<T> { 85 var max = defaultValue; 86 86 if (preprocessingData.VariableHasType<T>(columnIndex)) { 87 87 var values = GetValuesWithoutNaN<T>(columnIndex, considerSelection); … … 131 131 } 132 132 133 public T GetMostCommonValue<T>(int columnIndex, bool considerSelection = false) {133 public T GetMostCommonValue<T>(int columnIndex, T defaultValue, bool considerSelection = false) { 134 134 var values = GetValuesWithoutNaN<T>(columnIndex, considerSelection); 135 135 if (!values.Any()) 136 return default (T);136 return defaultValue; 137 137 return values.GroupBy(x => x) 138 138 .OrderByDescending(g => g.Count())
Note: See TracChangeset
for help on using the changeset viewer.