FindPeaks

FindPeaks[list]

gives positions and values of the detected peaks in list.

FindPeaks[list,σ]

finds peaks that survive Gaussian blurring up to scale σ.

FindPeaks[list,σ,s]

finds peaks with minimum sharpness s.

FindPeaks[list,σ,s,t]

finds only peaks with values greater than t.

FindPeaks[list,σ,{s,σs},{t,σt}]

uses different scales for thresholding sharpness and value.

Details and Options

  • FindPeaks finds local maxima using the given constraints, returning the result as {{x1,f1},{x2,f2},}.
  • The list can be an array of real-valued numbers or a TimeSeries.
  • FindPeaks[list] automatically chooses constraints to return a set of peaks.
  • To avoid the detection of noise-related peaks, the input is regularized by performing a Gaussian filtering using the standard deviation σ.
  • FindPeaks[list,0,0,-] returns all the peaks.
  • FindPeaks[list,σ,s,t] is equivalent to FindPeaks[list,σ,{s,σ},{t,0}].
  • The following options can be given:
  • InterpolationOrderAutomaticspline interpolation order of up to order 3
    Padding"Reversed"padding scheme to use
  • By default, InterpolationOrder1 is assumed for lists of data. For TimeSeries objects, the interpolation order is inherited.
  • With an explicit InterpolationOrdern, n is the interpolation order used for computing peak positions.
  • For possible settings for Padding, see the reference page for ArrayPad.

Examples

open allclose all

Basic Examples  (1)

Find position and height of dominant peaks in a list:

Visualize list and the detected peaks:

Scope  (12)

Data  (4)

Peaks of a 1D list:

Peaks of a TimeSeries object:

Peaks of an EventSeries object:

Find peaks:

Peaks of a list of Quantity objects:

Threshold for values greater than 30 meters:

Parameters  (8)

By default, an automatic scale is used:

Find all peaks at scale :

Compute peaks at different scales:

When finding peaks at scale , only peaks that sustain a blur up to scale are returned:

Signal and its blurred version at scale :

By default, peaks are not filtered based on their sharpness, equivalent to :

Specify minimum sharpness value :

Sharpness, defined by the negative second derivative, should be greater than the specified s:

Specify a minimum height value :

Apply the value threshold after smoothing the data using a scale :

Options  (3)

InterpolationOrder  (1)

By default, InterpolationOrder->1 is used:

Find peaks of the cubic interpolation:

Padding  (2)

By default, Padding->"Reversed" is used:

Specify a constant padding:

Detection and position of boundary peaks may vary depending on the padding value:

Applications  (3)

Find peaks in the stock price of Apple in one year:

Highlight peaks on the plot of the data:

Find peaks in elevation data:

Mean daily temperatures for Chicago during a period of two months:

Find peaks in the temperature:

Wolfram Research (2014), FindPeaks, Wolfram Language function, https://reference.wolfram.com/language/ref/FindPeaks.html.

Text

Wolfram Research (2014), FindPeaks, Wolfram Language function, https://reference.wolfram.com/language/ref/FindPeaks.html.

BibTeX

@misc{reference.wolfram_2020_findpeaks, author="Wolfram Research", title="{FindPeaks}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/FindPeaks.html}", note=[Accessed: 21-April-2021 ]}

BibLaTeX

@online{reference.wolfram_2020_findpeaks, organization={Wolfram Research}, title={FindPeaks}, year={2014}, url={https://reference.wolfram.com/language/ref/FindPeaks.html}, note=[Accessed: 21-April-2021 ]}

CMS

Wolfram Language. 2014. "FindPeaks." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/FindPeaks.html.

APA

Wolfram Language. (2014). FindPeaks. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FindPeaks.html