Baseline Correction
Usage
signal_correct(x, y, ...)
# S4 method for class 'numeric,numeric'
signal_correct(
x,
y,
method = c("linear", "polynomial", "asls", "rollingball", "rubberband", "SNIP", "4S"),
...
)
# S4 method for class 'ANY,missing'
signal_correct(
x,
method = c("linear", "polynomial", "asls", "rollingball", "rubberband", "SNIP", "4S"),
...
)Arguments
- x, y
A
numericvector. Ifyis missing, an attempt is made to interpretxin a suitable way (seegrDevices::xy.coords()).- ...
Extra arguments to be passed to
baseline_*()(see details).- method
A
characterstring specifying the method for baseline estimation (see details). Any unambiguous substring can be given.
Value
Returns a list with two components x and y.
Details
Available methods for baseline estimation:
aslsAsymmetric Least Squares Smoothing (see
baseline_asls()).linearLinear baseline estimation (see
baseline_linear()).polynomialPolynomial baseline estimation (see
baseline_polynomial()).rollingballRolling ball baseline estimation (see
baseline_rollingball()).rubberbandRubberband baseline estimation (see
baseline_rubberband()).SNIPSensitive Nonlinear Iterative Peak clipping algorithm (see
baseline_snip()).4S4S Peak Filling (see
baseline_peakfilling()).
See also
Other signal processing methods:
signal_bind(),
signal_drift(),
signal_mean(),
signal_shift(),
subset()
Examples
## gamma-ray spectrometry
data("BEGe")
## Subset from 2.75 to 200 keV
BEGe <- signal_select(BEGe, from = 3, to = 200)
## Drift
baseline <- baseline_snip(BEGe)
BEGe_drif <- signal_drift(BEGe, lag = baseline, subtract = TRUE)
plot(BEGe, type = "l", xlab = "Energy (keV)", ylab = "Count")
lines(BEGe_drif, type = "l", col = "red")
## Correct
BEGe_corr <- signal_correct(BEGe, method = "SNIP")
plot(BEGe, type = "l", xlab = "Energy (keV)", ylab = "Count")
lines(BEGe_corr, type = "l", col = "red")
