Coon.Compass.Procyon.QuantEntry.NormalizeSampleValues C# (CSharp) Method

NormalizeSampleValues() public method

public NormalizeSampleValues ( double>.Dictionary normalizationDict ) : void
normalizationDict double>.Dictionary
return void
        public void NormalizeSampleValues(Dictionary<string, double> normalizationDict)
        {
            foreach (KeyValuePair<string, double> kvp in normalizationDict)
            {
                double normalizedValue = kvp.Value * SampleValues[kvp.Key];
                NormalizedSampleValues.Add(kvp.Key, normalizedValue);
                Log2NormalizedSampleValues.Add(kvp.Key, Math.Log(normalizedValue, 2));
            }

            List<double> log2IntensityValues = new List<double>();
            foreach (KeyValuePair<string, double> kvp in Log2NormalizedSampleValues)
            {
                log2IntensityValues.Add(kvp.Value);
            }

            double mean = log2IntensityValues.Average();

            foreach (KeyValuePair<string, double> kvp in Log2NormalizedSampleValues)
            {
                MeanNormalizedSampleValues.Add(kvp.Key, (kvp.Value - mean));
            }
        }