sgolay | R Documentation |
Computes the filter coefficients for all Savitzky-Golay smoothing filters.
sgolay(p, n, m = 0, ts = 1)
p |
filter order. |
n |
filter length (must be odd). |
m |
return the m-th derivative of the filter coefficients. |
ts |
time scaling factor. |
The early rows of the result F
smooth based on future values and later rows
smooth based on past values, with the middle row using half future
and half past. In particular, you can use row i
to estimate x[k]
based on the i-1
preceding values and the n-i
following values of x
values as y[k] = F[i,] * x[(k-i+1):(k+n-i)]
.
Normally, you would apply the first (n-1)/2
rows to the first k
points of the vector, the last k
rows to the last k
points of the
vector and middle row to the remainder, but for example if you were
running on a realtime system where you wanted to smooth based on the
all the data collected up to the current time, with a lag of five
samples, you could apply just the filter on row n-5
to your window
of length n
each time you added a new sample.
An square matrix with dimensions length(n)
that is of
class 'sgolayFilter'
(so it can be used with filter
).
Original Octave version by Paul Kienzle pkienzle@users.sf.net. Modified by Pascal Dupuis. Conversion to R by Tom Short.
William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery, Numerical Recipes in C: The Art of Scientific Computing , 2nd edition, Cambridge Univ. Press, N.Y., 1992.
Octave Forge https://octave.sourceforge.io/
sgolayfilt
, filter
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.