supsmu(x, y, wt, span = "cv", periodic = FALSE, bass = 0)"cv" to choose this by leave-one-out
    cross-validation.TRUE, the x values are assumed to be in
    [0, 1] and of period 1.supsmu is a running lines smoother which chooses between three
  spans for the lines. The running lines smoothers are symmetric, with
  k/2 data points each side of the predicted point, and values of
  k as 0.5 * n, 0.2 * n and 0.05 * n, where
  n is the number of data points.  If span is specified,
  a single smoother with span span * n is used.The best of the three smoothers is chosen by cross-validation for each prediction. The best spans are then smoothed by a running lines smoother and the final prediction chosen by linear interpolation.
  The FORTRAN code says: For small samples (n < 40) or if
    there are substantial serial correlations between observations close
    in x-value, then a pre-specified fixed span smoother (span >
      0) should be used.  Reasonable span values are 0.2 to 0.4.
  Cases with non-finite values of x, y or wt are
  dropped, with a warning.
Friedman, J. H. (1984) A variable span scatterplot smoother. Laboratory for Computational Statistics, Stanford University Technical Report No.\ifelse{latex}{\out{~}}{ } 5.
pprrequire(graphics)
with(cars, {
    plot(speed, dist)
    lines(supsmu(speed, dist))
    lines(supsmu(speed, dist, bass = 7), lty = 2)
    })
Run the code above in your browser using DataLab