lightr
provides three main functions for patch import of spectral data and
metadata:
lr_get_spec()
lr_get_metadata()
lr_convert_tocsv()
Those three functions contain an internal loop and can directly be used to import/convert whole folders.
They also allow for recursive search in the folder tree with the argument
subdir
. In this example, the data
that contains a subdirectory named
procspec_files
, which contains :
└──+ data ├── avantes_export.ttt ├── avantes_export2.trt ├── avantes_export_long.ttt └──+ procspec_files ├── OceanOptics_badencode.ProcSpec ├── OceanOptics_Linux.ProcSpec ├── OceanOptics_Windows.ProcSpec └── whiteref.ProcSpec
We first demonstrate these features on lr_get_spec()
but they work in the same
way for lr_get_metadata()
and lr_convert_tocsv()
library(lightr)
lr_get_spec()
lr_get_spec()
is one the core functions of lightr
. It finds spectral data
files, extract the reflectance / transmittance / absorbance data and returns a
data.frame
where the first column (named wl
) contains the wavelengths and
the subsequent columns contain the spectral data, interpolated every nanometre:
res <- lr_get_spec(where = "data", ext = "ttt", lim = c(300, 700)) head(res)
lr_get_spec()
also supports setting multiple file extensions at once by
passing a character vector to ext
:
res <- lr_get_spec(where = "data", ext = c("ttt", "trt"), lim = c(300, 700)) head(res)
Finally, lr_get_spec()
can also recursively search in your folder tree with
the subdir
argument:
res <- lr_get_spec(where = "data", ext = "procspec", lim = c(300, 700), subdir = TRUE) head(res)
As you may have noticed, lr_get_spec()
does not care about the file extension
case by default. This can be changed by using the ignore.case
switch:
res <- lr_get_spec(where = "data", ext = "procspec", subdir = TRUE, ignore.case = FALSE)
If all your input files sample the wavelengths (this would be the case if you
use the same spectrometer model and same recording software), you can also get
uninterpolated data, by changing the value of the interpolate
boolean
argument:
res <- lr_get_spec(where = file.path("data", "puffin"), ext = "procspec", interpolate = FALSE) head(res)
lr_get_metadata()
lr_get_metadata()
extracts metadata captured by the spectrophotometer during
the recording. This metadata should be reported in your scientific articles to
ensure reproducibility of your measurements and ultimately of your findings. The
amount of information strongly depends on the brand and model of the
spectrometer.
Similarly to lr_get_spec()
, it can handle multiple extensions at once and
perform recursive searches:
res <- lr_get_metadata(where = "data", ext = c("trt", "procspec"), subdir = TRUE) head(res)
lr_convert_tocsv()
lr_convert_tocsv()
is designed for users who want an open format
version for each individual input file, possibly allowing them to carry on with
their analysis using another programming language or software.
It works in a very similar way to lr_get_spec()
and will create csv
files
with the same file names as the input files (but a different extension).
lr_convert_tocsv(where = "data", ext = "procspec", subdir = TRUE)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.