- Timestamp:
- 06/24/16 14:00:28 (8 years ago)
- Location:
- trunk/sources
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.DataPreprocessing.Views/3.4/StatisticsView.cs
r12889 r13935 146 146 logic.GetColumnTypeAsString(columnIndex), 147 147 logic.GetMissingValueCount(columnIndex).ToString(), 148 logic.GetMin<double>(columnIndex ).ToString(),149 logic.GetMax<double>(columnIndex ).ToString(),148 logic.GetMin<double>(columnIndex,double.NaN).ToString(), 149 logic.GetMax<double>(columnIndex,double.NaN).ToString(), 150 150 logic.GetMedian(columnIndex).ToString(), 151 151 logic.GetAverage(columnIndex).ToString(), … … 154 154 logic.GetOneQuarterPercentile(columnIndex).ToString(), 155 155 logic.GetThreeQuarterPercentile(columnIndex).ToString(), 156 logic.GetMostCommonValue<double>(columnIndex ).ToString(),156 logic.GetMostCommonValue<double>(columnIndex,double.NaN).ToString(), 157 157 logic.GetDifferentValuesCount<double>(columnIndex).ToString() 158 158 }; … … 172 172 "", //quarter percentile 173 173 "", //three quarter percentile 174 logic.GetMostCommonValue<string>(columnIndex ) ?? "",174 logic.GetMostCommonValue<string>(columnIndex,string.Empty) ?? "", 175 175 logic.GetDifferentValuesCount<string>(columnIndex).ToString() 176 176 }; … … 182 182 logic.GetColumnTypeAsString(columnIndex), 183 183 logic.GetMissingValueCount(columnIndex).ToString(), 184 logic.GetMin<DateTime>(columnIndex ).ToString(),185 logic.GetMax<DateTime>(columnIndex ).ToString(),184 logic.GetMin<DateTime>(columnIndex,DateTime.MinValue).ToString(), 185 logic.GetMax<DateTime>(columnIndex,DateTime.MinValue).ToString(), 186 186 logic.GetMedianDateTime(columnIndex).ToString(), 187 187 logic.GetAverageDateTime(columnIndex).ToString(), … … 190 190 logic.GetOneQuarterPercentile(columnIndex).ToString(), 191 191 logic.GetThreeQuarterPercentile(columnIndex).ToString(), 192 logic.GetMostCommonValue<DateTime>(columnIndex ).ToString(),192 logic.GetMostCommonValue<DateTime>(columnIndex,DateTime.MinValue).ToString(), 193 193 logic.GetDifferentValuesCount<DateTime>(columnIndex).ToString() 194 194 }; -
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.