Conversion between Wavelength and Spectra Matrix Column Index wl2i returns the column indices for the spectra matrix for the given wavelengths. i2wl converts column indices into wavelengths.
If wavelength
is numeric, each of its elements is converted to the respective index.
Values outside the range of x@wavelength
become NA
.
wl2i(x, wavelength = stop("wavelengths are required."), unlist = TRUE) i2wl(x, i)
x |
a |
wavelength |
the wavelengths to be converted into column indices, either numeric or a formula, see details. |
unlist |
if multiple wavelength ranges are given, should the indices be unlisted or kept in a list? |
i |
the column indices into the spectra matrix for which the wavelength is to be computed |
If the range is given as a formula (i.e. start ~ end
, a sequence
index corresponding to start : index corresponding to end
is returned. If the wavelengths are not ordered, that may lead to chaos. In this case, call
orderwl
first.
Two special variables can be used: min
and max
, corresponding to the lowest and
highest wavelength of x
, respectively.
start and end may be complex numbers. The resulting index for a complex x is then
index (Re (x)) + Im (x)
A numeric containing the resulting indices for wl2i
i2wl
returns a numeric with the wavelengths
C. Beleites
flu wl2i (flu, 405 : 407) wl2i (flu, 405 ~ 407) ## beginning of the spectrum to 407 nm wl2i (flu, min ~ 407) ## 2 data points from the beginning of the spectrum to 407 nm wl2i (flu, min + 2i ~ 407) ## the first 3 data points wl2i (flu, min ~ min + 2i) ## from 490 nm to end of the spectrum wl2i (flu, 490 ~ max) ## the last 8 data points wl2i (flu, max - 7i ~ max) ## get 450 nm +- 3 data points wl2i (flu, 450 - 3i ~ 450 + 3i) wl2i (flu, 300 : 400) ## all NA: wl2i (flu, 600 ~ 700) ## NULL: completely outside flu's wavelength range i2wl (chondro, 17:20)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.