loess

Purpose

Computes coefficients of locally weighted regression.

Format

{ yhat, ys, xs } = loess(depvar, indvars)
Parameters:
  • depvar (Nx1 vector) – dependent variable.

  • indvars (NxK matrix) – independent variables.

Returns:
  • yhat (Nx1 vector) – predicted depvar given indvars.

  • ys (_loess_numEvalx1 vector) – ordinate values given abscissae values in xs.

  • xs (_loess_numEvalx1 vector) – equally spaced abscissae values.

Global Input

_loess_Span

scalar, degree of smoothing. Must be greater than 2/N. Default = .67777.

_loess_NumEval

scalar, number of points in ys and xs. Default = 50.

_loess_Degree

scalar, if 2, quadratic fit, otherwise linear. Default = 1.

_loess_WgtType

scalar, type of weights. If 1, robust, symmetric weights, otherwise Gaussian. Default = 1.

__output

scalar, if 1, iteration information and results are printed, otherwise nothing is printed.

Examples

// Load dataset
data = loadd("lowess1.dta", "h1 + depth");

// Define independent variable
depvar = data[., 1];

// Defined dependent variable
indvars = data[., 2];

{ yhat, ys, xs } = loess(depvar, indvars);

Remarks

Based on Cleveland, William S. “Robust Locally Weighted Regression and Smoothing Scatterplots.” JASA, Vol. 74, 1979, 829-836.

Source

loess.src