smoothSingleXIC {DIAlignR} | R Documentation

## Smooth chromatogram signal

### Description

Smoothing methods are Savitzky-Golay, Boxcar, Gaussian kernel and LOESS. Savitzky-Golay smoothing is good at preserving peak-shape compared to gaussian and boxcar smoothing. However, it assumes equidistant points that fortunately is the case for DIA data. This requires a quadratic memory to store the fit and slower than other smoothing methods.

### Usage

    smoothSingleXIC(chromatogram, type, samplingTime = NULL,
      kernelLen = NULL, polyOrd = NULL)

### Arguments

`chromatogram` | (dataframe) A dataframe of two columns. First column must always be monotonically increasing.
`type` | (char) must be either sgolay, boxcar, gaussian, loess or none.
`samplingTime` | (numeric) Time difference between neighboring points.
`kernelLen` | (integer) Number of data-points to consider in the kernel.
`polyOrd` | (integer) Order of the polynomial to be fit in the kernel.

### Details

Gaussian smoothing uses a gaussian function whose bandwidth is scaled by 0.3706505 to have quartiles at +/- 0.25*bandwidth. The point selection cut-off is also hard at 0.3706505*4*bandwidth.

qnorm(0.75, sd = 0.3706505)

The definition of C_ksmooth can be found using getAnywhere('C_ksmooth') stats:::C_ksmooth

### Value

A dataframe with two columns.

### Author(s)

Shubham Gupta, shubh.gupta@mail.utoronto.ca

ORCID: 0000-0003-3500-8152

License: (c) Author (2020) + GPL3 Date: 2020-02-21

### See Also

https://terpconnect.umd.edu/~toh/spectrum/Smoothing.html, https://rafalab.github.io/dsbook/smoothing.html, https://github.com/SurajGupta/r-source/blob/master/src/library/stats/src/ksmooth.c

### Examples

    data("XIC_QFNNTDIVLLEDFQK_3_DIAlignR")
    chrom <- XIC_QFNNTDIVLLEDFQK_3_DIAlignR[["run0"]][["14299_QFNNTDIVLLEDFQK/3"]][[1]]
    ## Not run:
    newChrom <- smoothSingleXIC(chrom, type = "sgolay", samplingTime = 3.42, kernelLen = 9,
     polyOrd = 3)

    ## End(Not run)

[Package DIAlignR version 0.99.12 Index]