Learn R Programming

PROcess (version 1.48.0)

peaks: Peak Detection

Description

Finds the local maxima, local noise and its associated standard deviations in a vector.

Usage

peaks(x, span = 3) noise(x, span = 5) sigma(x, span = 5)

Arguments

x
a vector.
span
a local miximum is defined as an element in a sequence which is greater than all other elements within a window of width `span' centered at that element. The default value is 3, meaning that a peak is bigger than both of its neighbors. Local noise is definedas an element minus the mean of all elements within a window of width `span' centered at that element. Local standard deviation of an element is defined as the standard deviation of all elements within a window of width `span' centered at that element.

Value

a logical vector of the same length as `series' indicating where the peaks are.

Examples

Run this code
x <- seq(0, 10*pi, by=0.1)
y <- sin(x)*x
plot(x,y, type="l")
is.max <- peaks(y)
points(x[is.max],y[is.max], pch=21, bg="red")
legend(2, 25, legend = "Peaks",pch = 19, col="red", bty = "n")

# can be used for local minima too:
# is.min <- peaks(-y)
# points(x[is.min],y[is.min], pch=21, bg="blue")

Run the code above in your browser using DataLab