R: Smooth Numerical Data

smth {smoother} | R Documentation

## Smooth Numerical Data

### Description

Helper function to smooth numerical data using methods specified by the user.

### Usage

    smth(x = stop("Numeric Vector 'x' is Required"),
      method = getOption("smoother.method"), ...)

### Arguments

`x` | numeric vector of values to smooth
`method` | one of `'gaussian', 'sma', 'ema', 'dema'` or `'wma'`.
`...` | any other arguments to be passed to each specific smoothing methodology.

### Details

At this moment in time, the only method is the `'gaussian'` window function (similar to the Matlab Gaussian Window Smoothing Function) and a number of moving averages `'sma', 'ema', 'dema'` or `'wma'`. These are functions that allows the user to smooth an input vector, returning vector of the same length as the input. This can also be achieved using the specific `smth.gaussian` function.

### Value

a numeric vector of same length as input `'x'` vector

### References

If the `'method'` argument is equal to `'gaussian'`, then this function is a port of the function described here: http://goo.gl/HGM47U, very loosly based of code which has also been ported to c++ here: http://goo.gl/NK79bJ

### See Also

Refer to specific man files: `smth.gaussian`, `SMA`, `EMA`, `DEMA` or `WMA`

### Examples

    #Prepare Data
    n  = 1000
    x  = seq(-pi,pi,length.out=n)
    y  = sin(x) + (runif(length(x))*0.1) #NOISY DATA
    ys = smth(y,window = 0.1,method = "gaussian") #SMOOTHING
    plot(x,y,type="l",col="red")
    lines(x,ys,col="black",lwd=3)
    title("Example Smoothing of Noisy Data")

[Package smoother version 1.1 Index]