MsBackendMsp | R Documentation |
The MsBackendMsp
class supports import of MS/MS spectra data from
files in NIST MSP file format. MsBackendMsp
extends the
MsBackendDataFrame()
backend directly and supports thus the
applyProcessing()
function to make data manipulations persistent.
New objects are created with the MsBackendMsp()
function. The
backendInitialize()
method has to be subsequently called to
initialize the object and import MS/MS data from (one or more) msp
files.
The MsBackendMsp
backend provides an export()
method that allows to
export the data from the Spectra
object (parameter x
) to a file in
MSP format.
Parameters to this function are:
x
: the Spectra
object that should be exported.
file
: character(1)
with the desired file name.
mapping
: named character
providing the mapping between spectra
variables and MSP data fields. Defaults to
mapping = spectraVariableMapping(MsBackendMsp())
.
allVariables
: logical(1)
whether all spectra variables in x
should be
exported or only those defined with mapping
.
exportName
: logical(1)
whether a NAME
field should always be exported
even if not provided in x
.
See the package vignette for details and examples.
The spectraVariableMapping()
function allows to provide the mapping between
spectra variable names (i.e. the names that will be used for the spectra
variables in the Spectra()
object) and the data field names of the
MSP file. Parameter format
allows to select pre-defined mappings. Currently
supported mapping flavors are:
format = "msp"
: default MSP field names. Should work with standard NIST
MSP files or MSP files exported from MS-DIAL.
format = "mona"
: MSP file format from MoNA including LipidBlast.
## S4 method for signature 'MsBackendMsp'
backendInitialize(
object,
file,
mapping = spectraVariableMapping(object),
...,
BPPARAM = SerialParam()
)
MsBackendMsp()
## S4 method for signature 'MsBackendMsp'
spectraVariableMapping(object, format = c("msp", "mona"))
## S4 method for signature 'MsBackendMsp'
export(
object,
x,
file = tempfile(),
mapping = spectraVariableMapping(MsBackendMsp()),
allVariables = TRUE,
exportName = TRUE,
...
)
object |
Instance of |
file |
|
mapping |
named |
... |
Currently ignored. |
BPPARAM |
Parameter object defining the parallel processing
setup to import data in parallel. Defaults to |
format |
For |
x |
For |
allVariables |
|
exportName |
|
MsBackendMsp()
and backendInitialize()
return an instance of a
MsBackendMsp
class. spectraVariableMapping()
a named character
vector with the mapping between spectra variables and MSP data fields.
Format requirements/assumptions of MSP files:
Comment lines are expected to start with a #
.
Multiple spectra within the same MSP file are separated by an empty line.
The first n lines of a spectrum entry represent metadata.
Metadata is provided as "name: value" pairs (i.e. name and value separated by a ":").
One line per mass peak, with values separated by a whitespace or tabulator.
Each line is expected to contain at least the m/z and intensity values (in that order) of a peak. Additional values are currently ignored.
Steffen Neumann, Michael Witting, Laurent Gatto and Johannes Rainer
## Import spectra from a MSP file from LipidBlast
f <- system.file("extdata", "small-export-LipidBlast.msp",
package = "MsBackendMsp")
be <- backendInitialize(MsBackendMsp(), f)
be
be$msLevel
be$intensity
be$mz
## precursor m/z are however all missing
be$precursorMz
## Default spectra variable mapping
spectraVariableMapping(MsBackendMsp())
## In fact, to read MSP files in "LipidBlast flavour" (same as MoNA) we
## should use a different spectra variable mapping
spectraVariableMapping(MsBackendMsp(), "mona")
## Importing the data with this will correctly retrieve data
be <- backendInitialize(MsBackendMsp(), f,
mapping = spectraVariableMapping(MsBackendMsp(), "mona"))
be$precursorMz
## Other fields are also correctly mapped, but might need to be converted
## to e.g. numeric, such as "exactmass"
be$exactmass
be$exactmass <- as.numeric(be$exactmass)
be$adduct
be$formula
## Exporting Spectra objects in MSP format.
sps <- Spectra(be)
export(MsBackendMsp(), sps, file = stdout())
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.