Changeset 16308 for branches/2845_EnhancedProgress/HeuristicLab.DataPreprocessing.Views/3.4/StatisticsView.cs
- Timestamp:
- 11/20/18 13:52:40 (5 years ago)
- Location:
- branches/2845_EnhancedProgress
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2845_EnhancedProgress
- Property svn:mergeinfo changed
/stable reverse-merged: 15587-15588 /trunk/sources removed
- Property svn:mergeinfo changed
-
branches/2845_EnhancedProgress/HeuristicLab.DataPreprocessing.Views
- Property svn:mergeinfo changed
-
branches/2845_EnhancedProgress/HeuristicLab.DataPreprocessing.Views/3.4/StatisticsView.cs
r16307 r16308 1 1 #region License Information 2 2 /* HeuristicLab 3 * Copyright (C) 2002-201 8Heuristic and Evolutionary Algorithms Laboratory (HEAL)3 * Copyright (C) 2002-2016 Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 4 * 5 5 * This file is part of HeuristicLab. … … 87 87 88 88 private void UpdateData(Dictionary<string, bool> oldVisibility = null) { 89 var data = Content.PreprocessingData;90 rowsTextBox.Text = data.Rows.ToString();91 columnsTextBox.Text = data.Columns.ToString();92 numericColumnsTextBox.Text = GetColumnCount<double>().ToString();93 nominalColumnsTextBox5.Text = GetColumnCount<string>().ToString();94 missingValuesTextBox.Text = data.GetMissingValueCount().ToString();95 totalValuesTextBox.Text = ( data.Rows * data.Rows - data.GetMissingValueCount()).ToString();89 var logic = Content.StatisticsLogic; 90 rowsTextBox.Text = logic.GetRowCount().ToString(); 91 columnsTextBox.Text = logic.GetColumnCount().ToString(); 92 numericColumnsTextBox.Text = logic.GetNumericColumnCount().ToString(); 93 nominalColumnsTextBox5.Text = logic.GetNominalColumnCount().ToString(); 94 missingValuesTextBox.Text = logic.GetMissingValueCount().ToString(); 95 totalValuesTextBox.Text = (logic.GetColumnCount() * logic.GetRowCount() - logic.GetMissingValueCount()).ToString(); 96 96 97 97 var variableNames = Content.PreprocessingData.VariableNames.ToList(); … … 107 107 }; 108 108 109 for (int i = 0; i < data.Columns; i++) {110 var statistics= GetStatistics(i);111 for (int j = 0; j < statistics.Count; j++) {109 for (int i = 0; i < logic.GetColumnCount(); i++) { 110 var data = GetStatistics(i); 111 for (int j = 0; j < data.Count; j++) { 112 112 if (horizontal) 113 statisticsMatrix[j, i] = statistics[j];113 statisticsMatrix[j, i] = data[j]; 114 114 else 115 statisticsMatrix[i, j] = statistics[j];115 statisticsMatrix[i, j] = data[j]; 116 116 } 117 117 } … … 138 138 } 139 139 140 public int GetColumnCount<T>() {141 int count = 0;142 for (int i = 0; i < Content.PreprocessingData.Columns; ++i) {143 if (Content.PreprocessingData.VariableHasType<T>(i)) {144 ++count;145 }146 }147 return count;148 }149 150 140 private List<string> GetStatistics(int varIdx) { 151 141 List<string> list; 152 var data = Content.PreprocessingData;153 if ( data.VariableHasType<double>(varIdx)) {142 var logic = Content.StatisticsLogic; 143 if (logic.VariableHasType<double>(varIdx)) { 154 144 list = GetDoubleColumns(varIdx); 155 } else if ( data.VariableHasType<string>(varIdx)) {145 } else if (logic.VariableHasType<string>(varIdx)) { 156 146 list = GetStringColumns(varIdx); 157 } else if ( data.VariableHasType<DateTime>(varIdx)) {147 } else if (logic.VariableHasType<DateTime>(varIdx)) { 158 148 list = GetDateTimeColumns(varIdx); 159 149 } else { … … 167 157 168 158 private List<string> GetDoubleColumns(int statIdx) { 169 var data = Content.PreprocessingData;159 var logic = Content.StatisticsLogic; 170 160 return new List<string> { 171 data.GetVariableType(statIdx).Name,172 data.GetMissingValueCount(statIdx).ToString(),173 data.GetMin<double>(statIdx, emptyValue:double.NaN).ToString(),174 data.GetMax<double>(statIdx, emptyValue:double.NaN).ToString(),175 data.GetMedian<double>(statIdx, emptyValue: double.NaN).ToString(),176 data.GetMean<double>(statIdx, emptyValue: double.NaN).ToString(),177 data.GetStandardDeviation<double>(statIdx, emptyValue: double.NaN).ToString(),178 data.GetVariance<double>(statIdx, emptyValue: double.NaN).ToString(),179 data.GetQuantile<double>(0.25, statIdx, emptyValue: double.NaN).ToString(),180 data.GetQuantile<double>(0.75, statIdx, emptyValue: double.NaN).ToString(),181 data.GetMode<double>(statIdx, emptyValue:double.NaN).ToString(),182 data.GetDistinctValues<double>(statIdx).ToString()161 logic.GetColumnTypeAsString(statIdx), 162 logic.GetMissingValueCount(statIdx).ToString(), 163 logic.GetMin<double>(statIdx, double.NaN).ToString(), 164 logic.GetMax<double>(statIdx, double.NaN).ToString(), 165 logic.GetMedian(statIdx).ToString(), 166 logic.GetAverage(statIdx).ToString(), 167 logic.GetStandardDeviation(statIdx).ToString(), 168 logic.GetVariance(statIdx).ToString(), 169 logic.GetOneQuarterPercentile(statIdx).ToString(), 170 logic.GetThreeQuarterPercentile(statIdx).ToString(), 171 logic.GetMostCommonValue<double>(statIdx, double.NaN).ToString(), 172 logic.GetDifferentValuesCount<double>(statIdx).ToString() 183 173 }; 184 174 } 185 175 186 176 private List<string> GetStringColumns(int statIdx) { 187 var data = Content.PreprocessingData;177 var logic = Content.StatisticsLogic; 188 178 return new List<string> { 189 data.GetVariableType(statIdx).Name,190 data.GetMissingValueCount(statIdx).ToString(),191 "", // data.GetMin<string>(statIdx, emptyValue: string.Empty), //min192 "", // data.GetMax<string>(statIdx, emptyValue: string.Empty), //max193 "", // data.GetMedian<string>(statIdx, emptyValue: string.Empty), //median179 logic.GetColumnTypeAsString(statIdx), 180 logic.GetMissingValueCount(statIdx).ToString(), 181 "", //min 182 "", //max 183 "", //median 194 184 "", //average 195 185 "", //standard deviation 196 186 "", //variance 197 "", // data.GetQuantile<string>(0.25, statIdx, emptyValue: string.Empty), //quarter percentile198 "", // data.GetQuantile<string>(0.75, statIdx, emptyValue: string.Empty), //three quarter percentile199 data.GetMode<string>(statIdx, emptyValue: string.Empty),200 data.GetDistinctValues<string>(statIdx).ToString()187 "", //quarter percentile 188 "", //three quarter percentile 189 logic.GetMostCommonValue<string>(statIdx,string.Empty) ?? "", 190 logic.GetDifferentValuesCount<string>(statIdx).ToString() 201 191 }; 202 192 } 203 193 204 194 private List<string> GetDateTimeColumns(int statIdx) { 205 var data = Content.PreprocessingData;195 var logic = Content.StatisticsLogic; 206 196 return new List<string> { 207 data.GetVariableType(statIdx).Name,208 data.GetMissingValueCount(statIdx).ToString(),209 data.GetMin<DateTime>(statIdx).ToString(),210 data.GetMax<DateTime>(statIdx).ToString(),211 data.GetMedian<DateTime>(statIdx).ToString(),212 data.GetMean<DateTime>(statIdx).ToString(),213 "", // should be of type TimeSpan //data.GetStandardDeviation<DateTime>(statIdx).ToString(),214 "", // should be of type TimeSpan //data.GetVariance<DateTime>(statIdx).ToString(),215 data.GetQuantile<DateTime>(0.25,statIdx).ToString(),216 data.GetQuantile<DateTime>(0.75,statIdx).ToString(),217 data.GetMode<DateTime>(statIdx).ToString(),218 data.GetDistinctValues<DateTime>(statIdx).ToString()197 logic.GetColumnTypeAsString(statIdx), 198 logic.GetMissingValueCount(statIdx).ToString(), 199 logic.GetMin<DateTime>(statIdx, DateTime.MinValue).ToString(), 200 logic.GetMax<DateTime>(statIdx, DateTime.MinValue).ToString(), 201 logic.GetMedianDateTime(statIdx).ToString(), 202 logic.GetAverageDateTime(statIdx).ToString(), 203 logic.GetStandardDeviation(statIdx).ToString(), 204 logic.GetVariance(statIdx).ToString(), 205 logic.GetOneQuarterPercentile(statIdx).ToString(), 206 logic.GetThreeQuarterPercentile(statIdx).ToString(), 207 logic.GetMostCommonValue<DateTime>(statIdx, DateTime.MinValue).ToString(), 208 logic.GetDifferentValuesCount<DateTime>(statIdx).ToString() 219 209 }; 220 210 }
Note: See TracChangeset
for help on using the changeset viewer.