Learn R Programming

ravetools (version 0.1.3)

decimate: Decimate with 'FIR' or 'IIR' filter

Description

Decimate with 'FIR' or 'IIR' filter

Usage

decimate(x, q, n = if (ftype == "iir") 8 else 30, ftype = "fir")

Value

Decimated signal

Arguments

x

signal to be decimated

q

integer factor to down-sample by

n

filter order used in the down-sampling; default is 30 if ftype='fir', or 8 if ftype='iir'

ftype

filter type, choices are 'fir' (default) and 'iir'

Details

This function is migrated from signal package, but with bugs fixed on 'FIR' filters. The result agrees with 'Matlab' decimate function with 'FIR' filters. Under 'IIR' filters, the function is identical with signal::decimate, and is slightly different with 'Matlab' version.

Examples

Run this code

x <- 1:100
y <- decimate(x, 2, ftype = "fir")
y

# compare with signal package
z <- signal::decimate(x, 2, ftype = "fir")

# Compare decimated results
plot(x, type = 'l')
points(seq(1,100, 2), y, col = "green")
points(seq(1,100, 2), z, col = "red")


Run the code above in your browser using DataLab