Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

peaks

Local maxima


Description

Finds the local maxima in a vector, or time series, or in each column of a matrix.

Usage

peaks(x, span=3, strict=TRUE, endbehavior=0)

Arguments

x

vector or matrix.

span

a peak 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. Default: 3.

strict

logical flag: if TRUE, an element must be strictly greater than all other values in its window to be considered a peak. Default: TRUE.

endbehavior

a value of 0, 1 or 2 that determines how peaks are computed within a halfwidth (= floor(span/2)) of the ends of the sequence. A value of 0 means no value within halfwidth of the start or end can be considered a peak. A value of 1 means maximum values within halfwidth of the start or end can be considered a peak. A value of 2 returns NA for the values within halfwidth of the start or end. The default is endbehavior=0).

Value

an object like x of logical values. Values that are TRUE correspond to local peaks in the data.

Note

The value of endbehavior acts as follows: 0 is as if the series had runs of halfwidth values of Inf attached to either end, 1 is as if there were runs of halfwidth values of -Inf attached, and 2 is as if there were runs ofhalfwidth values of NA attached.

See Also

Examples

x <- as.vector(sunspots)
z <- peaks(x, span=51)
plot(x, type="l")
abline(v=which(z), col="red", lty="dashed")

splus2R

Supplemental S-PLUS Functionality in R

v1.3-3
GPL-2
Authors
William Constantine [aut], Tim Hesterberg [aut], Knut Wittkowski [ctb], Tingting Song [ctb], Bill Dunlap [ctb], Stephen Kaluzny [ctb, cre]
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.