Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
08/07/17 09:43:58 (7 years ago)
Author:
pfleck
Message:

#2809 Worked on type-save PreprocessingDataColumns.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/DataPreprocessing Cleanup/HeuristicLab.DataPreprocessing.Views/3.4/StatisticsView.cs

    r15283 r15309  
    9292      numericColumnsTextBox.Text = GetColumnCount<double>().ToString();
    9393      nominalColumnsTextBox5.Text = GetColumnCount<string>().ToString();
    94       missingValuesTextBox.Text = data.GetMissingValueCount().ToString();
    95       totalValuesTextBox.Text = (data.Rows * data.Rows - data.GetMissingValueCount()).ToString();
     94      missingValuesTextBox.Text = data.DataColumns.Sum(c => c.GetNumberOfMissingValues()).ToString();
     95      totalValuesTextBox.Text = (data.Rows * data.Rows - data.DataColumns.Sum(c => c.GetNumberOfMissingValues())).ToString();
    9696
    9797      var variableNames = Content.PreprocessingData.VariableNames.ToList();
     
    111111        for (int j = 0; j < statistics.Count; j++) {
    112112          if (horizontal)
    113             statisticsMatrix[j, i] = statistics[j];
     113            statisticsMatrix[j, i] = statistics[j].ToString();
    114114          else
    115             statisticsMatrix[i, j] = statistics[j];
     115            statisticsMatrix[i, j] = statistics[j].ToString();
    116116        }
    117117      }
     
    148148    }
    149149
    150     private List<string> GetStatistics(int varIdx) {
    151       List<string> list;
     150    private IList GetStatistics(int varIdx) {
     151      IList list;
    152152      var data = Content.PreprocessingData;
    153153      if (data.VariableHasType<double>(varIdx)) {
     
    166166    }
    167167
    168     private List<string> GetDoubleColumns(int statIdx) {
    169       var data = Content.PreprocessingData;
    170       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()
     168    private IList GetDoubleColumns(int statIdx) {
     169      var column = (DoublePreprocessingDataColumn)Content.PreprocessingData.DataColumns[statIdx];
     170      return new List<object> {
     171        column.GetValueType().Name,
     172        column.GetNumberOfMissingValues(),
     173        column.GetMin(),
     174        column.GetMax(),
     175        column.GetMedian(),
     176        column.GetMean(),
     177        column.GetStandardDeviation(),
     178        column.GetVariance(),
     179        column.GetQuantile(0.25),
     180        column.GetQuantile(0.75),
     181        column.GetMode(),
     182        column.GetDistinctValues()
    183183      };
    184184    }
    185185
    186     private List<string> GetStringColumns(int statIdx) {
    187       var data = Content.PreprocessingData;
    188       return new List<string> {
    189         data.GetVariableType(statIdx).Name,
    190         data.GetMissingValueCount(statIdx).ToString(),
    191         "", // data.GetMin<string>(statIdx, emptyValue: string.Empty), //min
    192         "", // data.GetMax<string>(statIdx, emptyValue: string.Empty), //max
    193         "", // data.GetMedian<string>(statIdx, emptyValue: string.Empty), //median
     186    private IList GetStringColumns(int statIdx) {
     187      var column = (StringPreprocessingDataColumn)Content.PreprocessingData.DataColumns[statIdx];
     188      return new List<object> {
     189        column.GetValueType().Name,
     190        column.GetNumberOfMissingValues(),
     191        "", //min
     192        "", //max
     193        "", //median
    194194        "", //average
    195195        "", //standard deviation
    196196        "", //variance
    197         "", // data.GetQuantile<string>(0.25, statIdx, emptyValue: string.Empty), //quarter percentile
    198         "", // data.GetQuantile<string>(0.75, statIdx, emptyValue: string.Empty), //three quarter percentile
    199         data.GetMode<string>(statIdx, emptyValue: string.Empty),
    200         data.GetDistinctValues<string>(statIdx).ToString()
     197        "", //quarter percentile
     198        "", //three quarter percentile
     199        column.GetMode(),
     200        column.GetDistinctValues()
    201201      };
    202202    }
    203203
    204     private List<string> GetDateTimeColumns(int statIdx) {
    205       var data = Content.PreprocessingData;
    206       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()
     204    private IList GetDateTimeColumns(int statIdx) {
     205      var column = (DateTimePreprocessingDataColumn)Content.PreprocessingData.DataColumns[statIdx];
     206      return new List<object> {
     207        column.GetValueType().Name,
     208        column.GetNumberOfMissingValues(),
     209        column.GetMin(),
     210        column.GetMax(),
     211        column.GetMedian(),
     212        column.GetMean(),
     213        column.GetStandardDeviation(), 
     214        /*column.GetVariance()*/"", // variance (in ticks) is usually to high to display a valid TimeSpan or DateTime
     215        column.GetQuantile(0.25),
     216        column.GetQuantile(0.75),
     217        column.GetMode(),
     218        column.GetDistinctValues()
    219219      };
    220220    }
Note: See TracChangeset for help on using the changeset viewer.