lowess.Rd
The lowess
function performs the computations for the
LOWESS smoother (see the reference below).
lowess
returns a an object containing components
x
and y
which give the coordinates of the smooth.
The smooth can then be added to a plot of the original
points with the function lines
.
Alternatively, plot
can be called directly on the object
returned from lowess
and the 'lowess' method for plot
will generate a scatterplot of the original data with a lowess
line superimposed.
Finally, the plotLowess
function both calculates the
lowess
smooth and plots the original data with a lowess
smooth.
lowess(x, ...)
# Default S3 method
lowess(x, y=NULL, f=2/3, iter=3L, delta=0.01 *
diff(range(x)), ...)
# S3 method for class 'formula'
lowess(formula,data=parent.frame(), ..., subset, f=2/3,
iter=3L, delta=.01*diff(range(mf[-response])))
# S3 method for class 'lowess'
plot(x, y, ..., col.lowess="red", lty.lowess=2)
plotLowess(formula, data=parent.frame(), ..., subset=parent.frame(),
col.lowess="red", lty.lowess=2 )
formula providing a single dependent variable (y) and an single independent variable (x) to use as coordinates in the scatter plot.
a data.frame (or list) from which the variables in `formula' should be taken.
an optional vector specifying a subset of observations to be used in the fitting process.
vectors giving the coordinates of the points in the scatter plot. Alternatively a single plotting structure can be specified.
the smoother span. This gives the proportion of points in the plot which influence the smooth at each value. Larger values give more smoothness.
the number of robustifying iterations which should be
performed.
Using smaller values of iter
will make lowess
run
faster.
values of x
which lie within delta
of each other replaced by a single value in the output from
lowess
.
parameters for methods.
color and line type for plotted line
Cleveland, W. S. (1979) Robust locally weighted regression and smoothing scatterplots. J. Amer. Statist. Assoc. 74, 829–836.
Cleveland, W. S. (1981) LOWESS: A program for smoothing scatterplots by robust locally weighted regression. The American Statistician, 35, 54.
loess
(in package modreg
), a newer
formula based version of lowess
(with different defaults!).
data(cars)
#
# x,y method
#
plot(cars$speed, cars$dist, main="lowess(cars)")
lines(lowess(cars$speed, cars$dist), col=2)
lines(lowess(cars$speed, cars$dist, f=.2), col=3)
legend(5, 120, c(paste("f=", c("2/3", ".2"))), lty=1, col=2:3)
#
# formula method: plot, then calculate the lowess smoother,
# then add smooth to the plot
#
plot(dist ~ speed, data=cars, main="lowess(cars)")
lines(lowess(dist ~ speed, data=cars), col=2, lty=2)
lines(lowess(dist ~ speed, data=cars, f=.2), col=3) # smaller bandwith
legend(5, 120, c(paste("f=", c("2/3", ".2"))), lty=1, col=2:3)
#
# formula method: calculate lowess() smoother, then call plot()
# on the lowess object
#
lw <- lowess(dist ~ speed, data=cars)
plot(lw, main="lowess(cars)" )
#
# formula method: calculate and plot in a single command
#
plotLowess(dist ~ speed, data=cars, main="lowess(cars)")