rfbaseline {IDPmisc}R Documentation

Robust Fitting of Baselines

Description

Robust fitting of local regression models for estimating a baseline or a background signal

Usage

rfbaseline(x, y, span = 2/3, NoXP = NULL,
           maxit = c(2, 2), b = 3.5, weight = NULL,
           Scale = function(r) median(abs(r))/0.6745,
           delta = NULL, SORT = TRUE, DOT = FALSE, init = NULL)

Arguments

x, y Abscissa and ordinate of the points on the scatterplot.
span Specifies the amount of smoothing; span is the fraction of points used to compute each fitted value; as span increases the output becomes smoother.
NoXP Another way of specifying the amount of smoothing; NoXP is the Number of X Points used to compute each fitted value; it must be larger than 3.
maxit The number of iterations in the robust fit; if maxit=c(0,0), the nonrobust fit is returned; the first entry specifies the number of iterations using an asymmetric biweight function, whereas the second entry specifies the number of iterations using the usual (symmetric) biweight function.
b Tuning constant in the biweight function.
weight Optional weights to be given to individual observations.
Scale function specifying how to calculate the scale of the residuals.
delta Nonnegative parameter which may be used to save computation. By default, if length(x) <= 100, delta is set equal to 0; if length(x) > 100 set to 1/100th of the range of x.
SORT Boolean variable indicating whether x data must be sorted. Change it only when the x are sorted and you want to safe computer time.
DOT If TRUE disregard outliers totally; that is, observations with weight 0 are disregarded even when the neighbourhood is determined.
init Values of an initial fit.

Value

List containing components

x Sorted input vector x with duplicate points removed
y Corresponding input vector y
fit Fitted values at x
rw Robust weights of (x,y)-Points used in last iteration of fit
scale Scale used in last iteration of fit

Author(s)

Andreas Ruckstuhl

References

Ruckstuhl, Andreas F., Matthew P. Jacobson, Robert W. Field and James A. Dodd (2001); Baseline Subtraction Using Robust Local Regression Estimation; Journal of Quantitative Spectroscopy and Radiative Transfer 68: 179 – 193

Ruckstuhl, Andreas F., et al.; Estimation of background concentrations of atmospheric trace gases using robust local regression; to be published

See Also

See Also as loess and lowess

Examples

data(MS)
MS1 <- log10(MS[MS$mz>12000&MS$mz<1e5,])

MS1.rfb2 <- rfbaseline(x=MS1$mz, y=MS1$I, NoXP=2200, maxit=c(5,0))
plot(x=MS1$mz, y=MS1$I,ty="l",
     xlab="log(mass/charge)", ylab="log(intensity)")
lines(MS1.rfb2$x, MS1.rfb2$fit, col="orange", lwd=3)

MS1.rfb3 <- rfbaseline(x=MS1$mz, y=MS1$I, NoXP=1100, maxit=c(5,0),
                       DOT=TRUE, Scale=function(x) mad(x, center=0))
plot(x=MS1$mz, y=MS1$I,ty="l",
     xlab="log(mass/charge)", ylab="log(intensity)")
lines(MS1.rfb3$x, MS1.rfb3$fit, col="orange", lwd=3)

## 'delta=0' needs much more computer time
## Not run: 
MS1.rfb4 <- rfbaseline(x=MS1$mz, y=MS1$I, NoXP=2200,
                       delta=0, maxit=c(5,0))
plot(x=MS1$mz, y=MS1$I,ty="l",
     xlab="log(mass/charge)", ylab="log(intensity)")
lines(MS1.rfb4$x, MS1.rfb4$fit, col="orange", lwd=3)
## End(Not run)

[Package IDPmisc version 1.0.01 Index]