The RamanEngine R6 class is a framework for parsing, processing, inspecting and storing Raman spectroscopic data. Raman data can be loaded from .asc and .sif files.
References
Sheehy G, Picot F, Dallaire F, Ember K, Nguyen T, Petrecca K, Trudel D, Leblond F (2023). “Open-sourced Raman spectroscopy data processing package implementing a baseline removal algorithm validated from multiple datasets acquired in human tissue and biofluids.” Journal of Biomedical Optics, 28(2), 025002. doi:10.1117/1.JBO.28.2.025002 .
Super class
StreamFind::CoreEngine
-> RamanEngine
Active bindings
raw_spectra
Named list of raw spectra
data.table
objects for each analysis.spectra
Named list of spectra
data.table
objects for each analysis or replicate.
Methods
Inherited methods
StreamFind::CoreEngine$export_analyses()
StreamFind::CoreEngine$export_headers()
StreamFind::CoreEngine$export_workflow()
StreamFind::CoreEngine$has_analyses()
StreamFind::CoreEngine$has_results()
StreamFind::CoreEngine$has_settings()
StreamFind::CoreEngine$import_analyses()
StreamFind::CoreEngine$import_headers()
StreamFind::CoreEngine$import_workflow()
StreamFind::CoreEngine$load()
StreamFind::CoreEngine$print()
StreamFind::CoreEngine$print_analyses()
StreamFind::CoreEngine$print_headers()
StreamFind::CoreEngine$print_workflow()
StreamFind::CoreEngine$run()
StreamFind::CoreEngine$run_app()
StreamFind::CoreEngine$run_workflow()
StreamFind::CoreEngine$save()
Method new()
Creates an R6 class RamanEngine. Child of CoreEngine R6 class.
Usage
RamanEngine$new(file = NULL, headers = NULL, workflow = NULL, analyses = NULL)
Arguments
file
Character of length one with the full path to the
sqlite
save file of the engine.headers
A
ProjectHeaders
S7 class object.workflow
A
Workflow
S7 class object.analyses
A
RamanAnalyses
S7 class object or acharacter vector
with full file paths to .asc and/or .sif raman files or adata.frame
with colnamesfile
,replicate
andblank
. The "replicate" column is used to group the analyses and the "blank" column is used to identify the blank samples. The "file" column is the full path to .asc and/or .sif files.
Method get_spectra()
Gets a data.table
with spectra from analyses.
Usage
RamanEngine$get_spectra(
analyses = NULL,
rt = NULL,
shift = NULL,
minIntensity = 0,
useRawData = FALSE
)
Arguments
analyses
A numeric/character vector with the number/name of the analyses.
rt
Numeric of length two with the minimum and maximum retention time, in seconds.
shift
Numeric of length two with the minimum and maximum shift, in cm-1.
minIntensity
Numeric (length 1) with the minimum intensity.
useRawData
Logical of length one. Set to
TRUE
for parsing raw spectra not spectra results/processed.
Method add_analyses()
Adds analyses based on asc files. Note that when adding new files, any existing results are removed.
Method plot_spectra()
Plots spectra for given RamanAnalyses.
Usage
RamanEngine$plot_spectra(
analyses = NULL,
rt = NULL,
shift = NULL,
minIntensity = 0,
useRawData = FALSE,
xVal = "shift",
xLab = NULL,
yLab = NULL,
title = NULL,
cex = 0.6,
showLegend = TRUE,
colorBy = "analyses",
interactive = TRUE
)
Arguments
analyses
A numeric/character vector with the number/name of the analyses.
rt
Numeric of length two with the minimum and maximum retention time, in seconds.
shift
Numeric of length two with the minimum and maximum shift, in cm-1.
minIntensity
Numeric (length 1) with the minimum intensity.
useRawData
Logical of length one. Set to
TRUE
for parsing raw spectra not spectra results/processed.xVal
Character of length one. Possible are "rt" or "shift" for using the retention time or the shift as x axis, respectively.
xLab
A string with the title for the x axis.
yLab
A string with the title for the y axis.
title
A string with the title.
cex
Numeric (length 1) defining the scale of the legend for non interactive plotting.
showLegend
Logical (length 1). Set to
TRUE
to show legend.colorBy
A string defining how to legend the plot. Possible values are
analyses
,targets
(the default) orreplicates
.interactive
Logical (length 1). When
TRUE
, the data is plotted interactively using plotly.
Method plot_spectra_baseline()
Plots spectra corrected for given RamanAnalyses.
Usage
RamanEngine$plot_spectra_baseline(
analyses = NULL,
rt = NULL,
shift = NULL,
minIntensity = 0,
xVal = "shift",
xLab = NULL,
yLab = NULL,
title = NULL,
cex = 0.6,
showLegend = TRUE,
colorBy = "analyses",
interactive = TRUE
)
Arguments
analyses
A numeric/character vector with the number/name of the analyses.
rt
Numeric of length two with the minimum and maximum retention time, in seconds.
shift
Numeric of length two with the minimum and maximum shift, in cm-1.
minIntensity
Numeric (length 1) with the minimum intensity.
xVal
Character of length one. Possible are "rt" or "shift" for using the retention time or the shift as x axis, respectively.
xLab
A string with the title for the x axis.
yLab
A string with the title for the y axis.
title
A string with the title.
cex
Numeric (length 1) defining the scale of the legend for non interactive plotting.
showLegend
Logical (length 1). Set to
TRUE
to show legend.colorBy
A string defining how to legend the plot. Possible values are
analyses
,targets
(the default) orreplicates
.interactive
Logical (length 1). When
TRUE
, the data is plotted interactively using plotly.
Method plot_spectra_peaks()
Plots peaks from spectra from analyses.
Usage
RamanEngine$plot_spectra_peaks(
analyses = NULL,
legendNames = NULL,
title = NULL,
colorBy = "analyses",
showLegend = TRUE,
xlim = NULL,
ylim = NULL,
cex = 0.6,
xLab = NULL,
yLab = NULL,
interactive = TRUE
)
Arguments
analyses
A numeric/character vector with the number/name of the analyses.
legendNames
A character vector with the same length as the targets or
TRUE
orFALSE
for using the name in the added targets as legend of the plot.title
A string with the title.
colorBy
A string defining how to legend the plot. Possible values are
analyses
,targets
(the default) orreplicates
.showLegend
Logical (length 1). Set to
TRUE
to show legend.xlim
A length one or two numeric vector for setting the x limits of the plot.
ylim
A length one or two numeric vector for setting the y limits of the plot.
cex
Numeric (length 1) defining the scale of the legend for non interactive plotting.
xLab
A string with the title for the x axis.
yLab
A string with the title for the y axis.
interactive
Logical (length 1). When
TRUE
, the data is plotted interactively using plotly.
Method plot_chromatograms()
Plots chromatograms from analyses with spectra coupled to LC.
Usage
RamanEngine$plot_chromatograms(
analyses = NULL,
rt = NULL,
shift = NULL,
minIntensity = 0,
useRawData = FALSE,
xLab = NULL,
yLab = NULL,
title = NULL,
cex = 0.6,
showLegend = TRUE,
colorBy = "analyses",
interactive = TRUE
)
Arguments
analyses
A numeric/character vector with the number/name of the analyses.
rt
Numeric of length two with the minimum and maximum retention time, in seconds.
shift
Numeric of length two with the minimum and maximum shift, in cm-1.
minIntensity
Numeric (length 1) with the minimum intensity.
useRawData
Logical of length one. Set to
TRUE
for parsing raw spectra not spectra results/processed.xLab
A string with the title for the x axis.
yLab
A string with the title for the y axis.
title
A string with the title.
cex
Numeric (length 1) defining the scale of the legend for non interactive plotting.
showLegend
Logical (length 1). Set to
TRUE
to show legend.colorBy
A string defining how to legend the plot. Possible values are
analyses
,targets
(the default) orreplicates
.interactive
Logical (length 1). When
TRUE
, the data is plotted interactively using plotly.
Method plot_chromatograms_peaks()
Plots peaks from chromatograms from analyses.
Usage
RamanEngine$plot_chromatograms_peaks(
analyses = NULL,
chromatograms = NULL,
legendNames = NULL,
title = NULL,
colorBy = "targets",
showLegend = TRUE,
xlim = NULL,
ylim = NULL,
cex = 0.6,
xLab = NULL,
yLab = NULL,
interactive = TRUE
)
Arguments
analyses
A numeric/character vector with the number/name of the analyses.
chromatograms
A character or integer vector with the ID (i.e. name) or the index of the chromatograms.
legendNames
A character vector with the same length as the targets or
TRUE
orFALSE
for using the name in the added targets as legend of the plot.title
A string with the title.
colorBy
A string defining how to legend the plot. Possible values are
analyses
,targets
(the default) orreplicates
.showLegend
Logical (length 1). Set to
TRUE
to show legend.xlim
A length one or two numeric vector for setting the x limits of the plot.
ylim
A length one or two numeric vector for setting the y limits of the plot.
cex
Numeric (length 1) defining the scale of the legend for non interactive plotting.
xLab
A string with the title for the x axis.
yLab
A string with the title for the y axis.
interactive
Logical (length 1). When
TRUE
, the data is plotted interactively using plotly.