R: Remove Linear Trends

detrend {pracma} | R Documentation

## Remove Linear Trends

### Description

Removes the mean value or (piecewise) linear trend from a vector or from each column of a matrix.

### Usage

    detrend(x, tt = 'linear', bp = c())

### Arguments

`x` | vector or matrix, columns considered as the time series.
`tt` | trend type, ‘constant’ or ‘linear’, default is ‘linear’.
`bp` | break points, indices between 1 and `nrow(x)`.

### Details

`detrend` computes the least-squares fit of a straight line (or composite line for piecewise linear trends) to the data and subtracts the resulting function from the data.

To obtain the equation of the straight-line fit, use `polyfit`.

### Value

removes the mean or (piecewise) linear trend from `x` and returns it in `y=detrend(x)`, that is `x-y` is the linear trend.

### Note

Detrending is often used for FFT processing.

### See Also

`polyfit`

### Examples

    t <- 1:9
    x <- c(0, 2, 0, 4, 4, 4, 0, 2, 0)
    x - detrend(x, 'constant')
    x - detrend(x, 'linear')

    y <- detrend(x, 'linear', 5)
    ## Not run:
    plot(t, x, col="blue")
    lines(t, x - y, col="red")
    grid()
    ## End(Not run)

[Package pracma version 2.0.4 Index]