Ejemplo n.º 1
0
        public IEnumerable <TPeak> FilterByNumberOfMostIntense(int topNPeaks)
        {
            double cutoffYvalue = YArray.Quantile(1.0 - (double)topNPeaks / Size);

            for (int i = 0; i < Size; i++)
            {
                if (YArray[i] >= cutoffYvalue)
                {
                    yield return(this[i]);
                }
            }
        }
Ejemplo n.º 2
0
        public Chromatogram CreateSmoothChromatogram(SmoothingType smoothing, int points)
        {
            switch (smoothing)
            {
            case SmoothingType.BoxCar:
                double[] newTimes       = XArray.BoxCarSmooth(points);
                double[] newIntensities = YArray.BoxCarSmooth(points);
                return(new Chromatogram(newTimes, newIntensities, false));

            default:
                return(new Chromatogram(this));
            }
        }
Ejemplo n.º 3
0
        public IEnumerable <TPeak> FilterByNumberOfMostIntense(int topNPeaks)
        {
            var quantile = 1.0 - (double)topNPeaks / Size;

            quantile = Math.Max(0, quantile);
            quantile = Math.Min(1, quantile);
            double cutoffYvalue = YArray.Quantile(quantile);

            for (int i = 0; i < Size; i++)
            {
                if (YArray[i] >= cutoffYvalue)
                {
                    yield return(GetPeak(i));
                }
            }
        }