Learn R Programming

spectacles (version 0.5-4)

apply_spectra: Apply a function on the spectra of a Spectra* object

Description

Aggregates spectral and data information of a Spectra object using a user-defined function.

Apply a function and update the spectra of a Spectra object. This function is particularly interesting for pre-processing, e.g to derive the spectra, or apply pre-processing functions such as snv.

Usage

apply_spectra(obj, fun, ...)

Value

An object of the same class as obj

Arguments

obj

an object inheriting from class Spectra

fun

an aggregation function

...

expressions evaluated in the context of fun

Author

Pierre Roudier pierre.roudier@gmail.com

Details

The philosophy of this function is to let the user free to use any function to pre-process a spectra collection, using either functions from the stats package, functions from other packages such as signal, or personal functions.

See Also

aggregate_spectra, snv, rnv

Examples

Run this code

# Loading example data
data(australia)
spectra(australia) <- sr_no ~ ... ~ 350:2500

# Second derivative
r <- apply_spectra(australia, diff, 2)
plot(r)

# Smoothing kernel
k <- kernel("daniell", 20) # define a kernel
r <- apply_spectra(australia, kernapply, k)
plot(r)

if (FALSE) {
# Savitzky-Golay filter (from the signal package)
library(signal)
r <- apply_spectra(australia, sgolayfilt, n = 33, p = 4)
plot(r)
}

Run the code above in your browser using DataLab