The Spectra package defines an efficient infrastructure for storing and handling mass spectrometry spectra and functionality to subset, process, visualize and compare spectra data. It provides different implementations (backends) to store mass spectrometry data. These comprise backends tuned for fast data access and processing and backends for very large data sets ensuring a small memory footprint.
A (possibly incomplete) list of available backends (along with a link to the R package providing it) is shown below:
MsBackendMemory
(package: Spectra): default backend which keeps all data in memory. Optimized for fast processing.MsBackendDataFrame
(package: Spectra): alternative to theMsBackendMemory
also keeping all data in memory, but supportingS4
objects as spectra variables because the data is stored internally in aDataFrame
.MsBackendMzR
(package: Spectra): by using themzR
package it supports import of MS data from mzML, mzXML and CDF files. This backend keeps only general spectra variables in memory and retrieves the peaks data (m/z and intensity values) on-the-fly from the original data files. The backend has thus a smaller memory footprint compared to in-memory backends.MsBackendHdf5Peaks
(package: Spectra): on-disk backend similar toMsBackendMzR
, but the peaks data is stored in HDF5 files (general spectra variables are kept in memory).MsBackendMgf
(package MsBackendMgf: allows to import/export data in mascot generic format (MGF). Extends theMsBackendDataFrame
and keeps thus all data, after import, in memory.MsBackendMsp
(package MsbackendMsp: allows to import/export data in NIST MSP format. Extends theMsBackendDataFrame
and keeps thus all data, after import, in memory.MsBackendMassbank
(package MsBackendMassbank): allows to import/export data in MassBank text file format. Extends theMsBackendDataFrame
and keeps thus all data, after import, in memory.MsBackendMassbankSql
(package MsBackendMassbank): allows to directly connect to a MassBank SQL database to retrieve all MS data and variables. Has a minimal memory footprint because all data is retrieved on-the-fly from the SQL database.MsBackendRawFileReader
(package MsBackendRawFileReader): implements a backend for reading MS data from Thermo Fisher Scientific's raw data files using the manufacturer's NewRawFileReader .Net libraries. The package generalizes the functionality introduced by therawrr
package.MsBackendHmdbXml
(package MsbackendHmdb): allows import of MS data from xml files of the Human Metabolome Database (HMDB). Extends theMsBackendDataFrame
and keeps thus all data, after import, in memory.MsBackendSql
(package MsBackendSql): stores all MS data in a SQL database and has thus a minimal memory footprint.MsBackendCompDb
(package CompoundDb: provides access to spectra data (spectra and peaks variables) from a CompDb database. Has a small memory footprint because all data (except precursor m/z values) are retrieved on-the-fly from the database.MsBackendTimsTof
(package MsBackendTimsTof: allows import of data from Bruker TimsTOF raw data files (using theopentimsr
R package).MsBackendWeizMass
(package MsBackendWeizMass: allows to access MS data from WeizMass MS/MS spectral databases.
For more information see the package homepage.
The package can be installed with
install.packages("BiocManager")
BiocManager::install("Spectra")
Contributions are highly welcome and should follow the contribution guidelines. Also, please check the coding style guidelines in the RforMassSpectrometry vignette.