smooth Smooth data.
Z = smooth(Y) smooths data Y using a 5-point moving average.
Z = smooth(Y,SPAN) smooths data Y using SPAN as the number of points used
to compute each element of Z.
Z = smooth(Y,SPAN,METHOD) smooths data Y with specified METHOD. The
available methods are:
'moving' - Moving average (default)
'lowess' - Lowess (linear fit)
'loess' - Loess (quadratic fit)
'sgolay' - Savitzky-Golay
'rlowess' - Robust Lowess (linear fit)
'rloess' - Robust Loess (quadratic fit)
Z = smooth(Y,METHOD) uses the default SPAN 5.
Z = smooth(Y,SPAN,'sgolay',DEGREE) and Z = smooth(Y,'sgolay',DEGREE)
additionally specify the degree of the polynomial to be used in the
Savitzky-Golay method. The default DEGREE is 2. DEGREE must be smaller
than SPAN.
Z = smooth(X,Y,...) additionally specifies the X coordinates. If X is
not provided, methods that require X coordinates assume X = 1:N, where
N is the length of Y.
Notes:
1. When X is given and X is not uniformly distributed, the default method
is 'lowess'. The 'moving' method is not recommended.
2. For the 'moving' and 'sgolay' methods, SPAN must be odd.
If an even SPAN is specified, it is reduced by 1.
3. If SPAN is greater than the length of Y, it is reduced to the
length of Y.
4. In the case of (robust) lowess and (robust) loess, it is also
possible to specify the SPAN as a percentage of the total number
of data points. When SPAN is less than or equal to 1, it is
treated as a percentage.
For example:
Z = smooth(Y) uses the moving average method with span 5 and
X=1:length(Y).
Z = smooth(Y,7) uses the moving average method with span 7 and
X=1:length(Y).
Z = smooth(Y,'sgolay') uses the Savitzky-Golay method with DEGREE=2,
SPAN = 5, X = 1:length(Y).
Z = smooth(X,Y,'lowess') uses the lowess method with SPAN=5.
Z = smooth(X,Y,SPAN,'rloess') uses the robust loess method.
Z = smooth(X,Y) where X is unevenly distributed uses the
'lowess' method with span 5.
Z = smooth(X,Y,8,'sgolay') uses the Savitzky-Golay method with
span 7 (8 is reduced by 1 to make it odd).
Z = smooth(X,Y,0.3,'loess') uses the loess method where span is
30% of the data, i.e. span = ceil(0.3*length(Y)).