R: Get peaks and valleys in a spectrum

get_peaks {photobiology} | R Documentation

## Get peaks and valleys in a spectrum

### Description

These functions find peaks (local maxima) or valleys (local minima) in a spectrum, using a user selectable size threshold relative to the tallest peak (global maximum). This a wrapper built on top of function peaks from package splus2R.

### Usage

    get_peaks(x, y, ignore_threshold = 0, span = 5, strict = TRUE,
      x_unit = "", x_digits = 3, na.rm = FALSE)

    get_valleys(x, y, ignore_threshold = 0, span = 5, strict = TRUE,
      x_unit = "", x_digits = 3, na.rm = FALSE)

### Arguments

`x` | numeric
`y` | numeric
`ignore_threshold` | numeric Value between 0.0 and 1.0 indicating the relative size compared to tallest peak or deepest valley of the peaks to return.
`span` | numeric 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. For example, a value of 3 means that a peak is bigger than both of its neighbors.
`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.
`x_unit` | character Vector of texts to be pasted at end of labels built from x value at peaks.
`x_digits` | numeric Number of significant digits in wavelength label.
`na.rm` | logical indicating whether `NA` values should be stripped before searching for peaks.

### Value

A data frame with variables w.length and s.irrad with their values at the peaks or valleys plus a character variable of labels.

### See Also

Other peaks and valleys functions: `find_peaks`, `peaks`, `valleys`

### Examples

    with(sun.spct, get_peaks(w.length, s.e.irrad))
    with(sun.spct, get_valleys(w.length, s.e.irrad))

[Package photobiology version 0.9.21 Index]