MSpectra: List of Spectrum objects along with annotations

Description Usage Arguments Details Constructor Accessing spectrum attributes Data manipulation methods Filtering and subsetting Author(s) Examples

View source: R/functions-MSpectra.R

Description

MSpectra (Mass Spectra) objects allow to collect one or more Spectrum object(s) (Spectrum1 or Spectrum2) in a list-like structure with the possibility to add arbitrary annotations to each individual Spectrum object. These can be accessed/set with the mcols() method.

MSpectra objects can be created with the MSpectra function.

Functions to access the individual spectra's attributes are available (listed below).

writeMgfData exports a MSpectra object to a file in MGF format. All metadata columns present in mcols are exported as additional fields with the capitalized column names used as field names (see examples below).

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
MSpectra(..., elementMetadata = NULL)

## S4 method for signature 'MSpectra'
mz(object)

## S4 method for signature 'MSpectra'
intensity(object)

## S4 method for signature 'MSpectra'
rtime(object)

## S4 method for signature 'MSpectra'
precursorMz(object)

## S4 method for signature 'MSpectra'
precursorCharge(object)

## S4 method for signature 'MSpectra'
precScanNum(object)

## S4 method for signature 'MSpectra'
precursorIntensity(object)

## S4 method for signature 'MSpectra'
acquisitionNum(object)

## S4 method for signature 'MSpectra'
scanIndex(object)

## S4 method for signature 'MSpectra,ANY'
peaksCount(object)

## S4 method for signature 'MSpectra'
msLevel(object)

## S4 method for signature 'MSpectra'
tic(object)

## S4 method for signature 'MSpectra'
ionCount(object)

## S4 method for signature 'MSpectra'
collisionEnergy(object)

## S4 method for signature 'MSpectra'
fromFile(object)

## S4 method for signature 'MSpectra'
polarity(object)

## S4 method for signature 'MSpectra'
smoothed(object)

## S4 method for signature 'MSpectra'
isEmpty(x)

## S4 method for signature 'MSpectra'
centroided(object)

## S4 method for signature 'MSpectra'
isCentroided(object)

## S4 method for signature 'MSpectra'
writeMgfData(object, con = "spectra.mgf", COM = NULL, TITLE = NULL)

## S4 method for signature 'MSpectra'
clean(object, all = FALSE, msLevel. = msLevel., ...)

## S4 method for signature 'MSpectra'
removePeaks(object, t, msLevel., ...)

## S4 method for signature 'MSpectra'
filterMz(object, mz, msLevel., ...)

## S4 method for signature 'MSpectra'
pickPeaks(
  object,
  halfWindowSize = 3L,
  method = c("MAD", "SuperSmoother"),
  SNR = 0L,
  refineMz = c("none", "kNeighbors", "kNeighbours", "descendPeak"),
  msLevel. = unique(msLevel(object)),
  ...
)

## S4 method for signature 'MSpectra'
smooth(
  x,
  method = c("SavitzkyGolay", "MovingAverage"),
  halfWindowSize = 2L,
  ...
)

## S4 method for signature 'MSpectra'
filterMsLevel(object, msLevel.)

Arguments

...

For MSpectra: Spectrum object(s) or a list of Spectrum objects. For all other methods optional arguments passed along.

elementMetadata

For MSpectra: DataFrame with optional information that should be added as metadata information (mcols) to the object. The number of rows has to match the number of Spectrum objects, each row is expected to represent additional metadata information for one spectrum.

object

For all functions: a MSpectra object.

x

For all functions: a MSpectra object.

con

For writeMgfData: character(1) defining the file name of the MGF file.

COM

For writeMgfData: optional character(1) providing a comment to be added to the file.

TITLE

For writeMgfData: optional character(1) defining the title for the MGF file.

all

For clean: if FALSE original 0-intensity values are retained around peaks.

msLevel.

For clean, removePeaks, filterMz, pickPeaks: optionally specify the MS level(s) of the spectra on which the operation should be performed. For filterMsLevels: MS level(s) to which the MSpectra should be reduced.

t

For removePeaks: numeric(1) specifying the threshold below which intensities are set to 0.

mz

For filterMz: numeric(2) defining the lower and upper m/z for the filter. See filterMz() for details.

halfWindowSize

For pickPeaks and smooth: see pickPeaks() and smooth() for details.

method

For pickPeaks and smooth: see pickPeaks() and smooth() for details.

SNR

For pickPeaks: see pickPeaks() for details.

refineMz

For pickPeaks: see pickPeaks() for details.

Details

MSpectra inherits all methods from the SimpleList class of the S4Vectors package. This includes lapply and other data manipulation and subsetting operations.

Constructor

New MSpectra can be created with the MSpectra(...) function where ... can either be a single Spectrum object or a list of Spectrum objects (Spectrum1 and/or Spectrum2).

Accessing spectrum attributes

These methods allow to access the attributes and values of the individual Spectrum (Spectrum1 or Spectrum2) objects within the list.

Data manipulation methods

Filtering and subsetting

Author(s)

Johannes Rainer

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
## Create from Spectrum objects
sp1 <- new("Spectrum1", mz = c(1, 2, 4), intensity = c(4, 5, 2))
sp2 <- new("Spectrum2", mz = c(1, 2, 3, 4), intensity = c(5, 3, 2, 5),
    precursorMz = 2)

spl <- MSpectra(sp1, sp2)
spl
spl[[1]]

## Add also metadata columns
mcols(spl)$id <- c("a", "b")
mcols(spl)

## Create a MSpectra with metadata
spl <- MSpectra(sp1, sp2, elementMetadata = DataFrame(id = c("a", "b")))

mcols(spl)
mcols(spl)$id

## Extract the mz values for the individual spectra
mz(spl)

## Extract the intensity values for the individual spectra
intensity(spl)

## Extract the retention time values for the individual spectra
rtime(spl)

## Extract the precursor m/z of each spectrum.
precursorMz(spl)

## Extract the precursor charge of each spectrum.
precursorCharge(spl)

## Extract the precursor scan number for each spectrum.
precScanNum(spl)

## Extract the precursor intensity of each spectrum.
precursorIntensity(spl)

## Extract the acquisition number of each spectrum.
acquisitionNum(spl)

## Extract the scan index of each spectrum.
scanIndex(spl)

## Get the number of peaks per spectrum.
peaksCount(spl)

## Get the MS level of each spectrum.
msLevel(spl)

## Get the total ion current for each spectrum.
tic(spl)

## Get the total ion current for each spectrum.
ionCount(spl)

## Extract the collision energy for each spectrum.
collisionEnergy(spl)

## Extract the file index for each spectrum.
fromFile(spl)

## Get the polarity for each spectrum.
polarity(spl)

## Whether spectra are smoothed (i.e. processed with the `smooth`
## function).
smoothed(spl)

## Are spectra empty (i.e. contain no peak data)?
isEmpty(spl)

## Do the spectra contain centroided data?
centroided(spl)

## Do the spectra contain centroided data? Whether spectra are centroided
## is estimated from the peak data.
isCentroided(spl)

## Export the spectrum list to a MGF file. Values in metadata columns are
## exported as additional field for each spectrum.
tmpf <- tempfile()
writeMgfData(spl, tmpf)

## Evaluate the written output. The ID of each spectrum (defined in the
## "id" metadata column) is exported as field "ID".
readLines(tmpf)

## Set mcols to NULL to avoid export of additional data fields.
mcols(spl) <- NULL
file.remove(tmpf)

writeMgfData(spl, tmpf)
readLines(tmpf)

## Filter the object by MS level
filterMsLevel(spl, msLevel. = 1)

MSnbase documentation built on Jan. 23, 2021, 2 a.m.