decimate(x, q, ftype = c("iir","fir"), n = ifelse(ftype =="iir",8,30))
Arguments
x: input data, specified as a numeric vector or matrix. In case of a vector it represents a single signal; in case of a matrix each column is a signal.
q: decimation factor, specified as a positive integer.
ftype: filter type; either "fir", specifying a FIR filter of length n designed with the function fir1, or "iir" (default), specifying an IIR Chebyshev filter of order 8 using the function cheby1.
n: Order of the filter used prior to the downsampling, specified as a positive integer. Default: 8 if ftype equals "iir"; 30 of ftype equals "fir".
Returns
downsampled signal, returned as a vector or matrix.
Examples
t <- seq(0,2,0.01)x <- chirp(t,2,.5,10,'quadratic')+ sin(2* pi * t *0.4)w <-1:121plot(t[w]*1000, x[w], type ="h", col ="green")points(t[w]*1000, x[w], col ="green")y = decimate(x,4)lines(t[seq(1,121,4)]*1000, y[1:31], type ="h", col ="red")points(t[seq(1,121,4)]*1000, y[1:31], col ="red")