Пример #1
0
        private void MedianNormalizeDataSet(Dictionary <string, List <double> > normalizationSubset)
        {
            Dictionary <string, double> tempDict = new Dictionary <string, double>();
            List <double> listForAverage         = new List <double>();

            //Go through Each Column in the Quant File, Calculate Median and Save to Dictionary
            //Also save the median values to a list that will be used for Normalization
            foreach (KeyValuePair <string, List <double> > kvp in normalizationSubset)
            {
                kvp.Value.Sort();
                double middleIndexDouble = kvp.Value.Count / 2;
                int    middleIndex       = (int)Math.Round(middleIndexDouble);
                double median            = kvp.Value.ElementAt(middleIndex);

                tempDict.Add(kvp.Key, median);
                listForAverage.Add(median);
            }

            double average = listForAverage.Average();

            foreach (KeyValuePair <string, double> kvp3 in tempDict)
            {
                double replaceValue = average / kvp3.Value;
                HeadertoNormValueDict.Add(kvp3.Key, replaceValue);
            }

            ApplyNormalizationFactors();
        }
Пример #2
0
        private void DoNotNormalizeDataSet(Dictionary <string, List <double> > normalizationSubset)
        {
            foreach (KeyValuePair <string, List <double> > kvp in normalizationSubset)
            {
                HeadertoNormValueDict.Add(kvp.Key, 1);
            }

            ApplyNormalizationFactors();
        }
Пример #3
0
        private void SumNormalizeDataSet(Dictionary <string, List <double> > normalizationSubset)
        {
            Dictionary <string, double> tempDict = new Dictionary <string, double>();
            List <double> listForAverage         = new List <double>();

            foreach (KeyValuePair <string, List <double> > kvp in normalizationSubset)
            {
                tempDict.Add(kvp.Key, kvp.Value.Sum());
                listForAverage.Add(kvp.Value.Sum());
            }

            double average = listForAverage.Average();

            foreach (KeyValuePair <string, double> kvp3 in tempDict)
            {
                double replaceValue = average / kvp3.Value;
                HeadertoNormValueDict.Add(kvp3.Key, replaceValue);
            }

            ApplyNormalizationFactors();
        }