IBSpectra-class {isobar} | R Documentation

## IBSpectra Class for Isobarically Tagged Quantitative MS Proteomics Data

### Description

This class represents a quantitative MS proteomics experiment labeled using Isobaric tags (iTRAQ, TMT). `IBSpectra` is a abstract class which is implemented in the `IBSpectraTypes` classes `iTRAQ4plexSpectra`, `iTRAQ8plexSpectra`, `TMT2plexSpectra`, `TMT6plexSpectra` and `TMT10plexSpectra`.

It contains per-spectrum meassurements of the reporter tag intensity and m/z in assayData, and protein grouping in proteinGroup.

### Objects from the Class

`IBSpectra` objects are typically created using the `readIBSpectra` method or by calls of the form `new("iTRAQ4plexSpectra",data=NULL,data.ions=NULL,...).`

### Slots

`IBSpectra` extends `eSet` which is a container for high-throughput assays and experimental metadata. Slots introduced in `eSet` (for more details on slots and methods refer to `eSet` help):

`assayData`:

  Contains matrices 'ions' and 'mass storing reporter tag intensities and m/z values for each tag and spectrum. Can be accessed by `reporterIntensities` and `reporterMasses`. Class: `AssayData`

`phenoData`:

  Contains experimenter-supplied variables describing phenotypes behind reporter tags. Class: `AnnotatedDataFrame-class`

`featureData`:

  Describes the spectra's retention time, charge, peptide sequence, etc and can be accessed by `fData`. Class: `AnnotatedDataFrame`

`experimentData`:

  Contains details of experimental methods. Class: `MIAME`

`annotation`:

  UNUSED. Label associated with the annotation package used in the experiment. Class: `character`

`protocolData`:

  UNUSED. Contains equipment-generated variables describing reporter tags. Class: `AnnotatedDataFrame`

`log`:

  `character matrix` logging isotope impurity correction, normalization, etc.

Slots introduced in `IBSpectra`:

`proteinGroup`:

  A `ProteinGroup` object describing peptide and protein identifications grouped by shared peptides.

`reporterTagNames`:

  A character vector denoting the reporter tag labels.

`reporterMasses`:

  The 'true' m/z of the reporter tags in the MS/MS spectrum, used to isolate m/z-intensity pairs from peaklist.

`isotopeImpurities`:

  Manufacturer supplied isotope impurities, need to be set per batch and used for correction by `correctIsotopeImpurities`.

### Constructor

See `readIBSpectra` for creation based on peaklist (e.g. MGF format) and identification files (Mascot and Phenyx output).

`new(type,data)`:

  Creates a IBSpectra object.

  `type`

    Denotes the type of IBSpectra, either 'iTRAQ4plexSpectra','iTRAQ8plexSpectra','TMT2plexSpectra', 'TMT6plexSpectra' or 'TMT10plexSpectra'. Call IBSpectraTypes() to see a list of the implemented types.

  `data`

    A 'data.frame' in a ibspectra-csv format.

### Coercion

In the code snippets below, `x` is a IBSpectra object. `IBSpectra` object can be coerced to

`as(x, "data.frame")`:

  Creates a data.frame containing all identification and quantitation information. Peptide matching to multiple proteins produce multiple lines.

`ibSpectra.as.concise.data.frame(x)`:

  Creates a data.frame containing all identification and quantitation information. Proteins are concatenated - so the resulting `data.frame` has one line per spectrum.

`as(x, "MSnSet")`:

  Coerces to a `MSnSet` object (package `MSnbase`).

`as(msnset,"IBSpectra")`:

  Coerces a `MSnSet` to `IBSpectra` object.

### Accessors

In the following code snippets, `x` is a IBSpectra object.

`proteinGroup(x)`:

  Gets and sets the ProteinGroup.

`isotopeImpurities(x)`:

  Gets and sets the isotope impurities of the isobaric tags as defined by the manufacturers per batch.

`reporterData(x,element="ions",na.rm=FALSE,na.rm.f='any',...)`:

  Gets and sets the element ('ions' or 'mass') for each tag and spectrum. '...' is handed down to spectrumSel, so it is possible to select for peptides or proteins. If na.rm is TRUE, than spectra missing quantitative information in 'any' or 'all' channels (parameter na.rm.f) are removed.

`reporterIntensities(x,...)`:

  Convenience function, calls reporterData(...,element="ions")

`reporterMasses(x,...)`:

  Convenience function, calls reporterData(...,element="mass")

`spectrumTitles(x,...)`:

  Gets the spectrum titles. '...' is passed down to spectrumSel.

`classLabels(x)`:

  Gets and sets the class labels in phenoData. Used for summarization, see also `estimateRatio` and `phenoData`.

### Methods

In the following code snippets, `x` is a IBSpectra object.

`subsetIBSpectra(x, protein=NULL, peptide=NULL, direction="exclude",specificity)`:

  Get a 'subset' of IBSpectra: include or exclude proteins or peptides. When selection is based on proteins, it can be defined to exclude only peptides which are specific to the protein ('reporter-specific'), specific to the group ('group-specific') or which are shared with other proteins ('unspecific'). See `subsetIBSpectra`.

`spectrumSel(x,peptide,protein,specificity="reporter-specific")`:

  Gets a boolean vector selecting the corresponding spectra: If peptide is given, all spectra assigned to this peptide. If protein is given, all spectra assigned to peptides of this protein with specificity 'specificity'. See also `ProteinGroup`.

### Author(s)

Florian P. Breitwieser

### See Also

ProteinGroup, isobar-preprocessing, isobar-analysis, isobar-plots

### Examples

    data(ibspiked_set1)
    ibspiked_set1
    head(reporterIntensities(ibspiked_set1))
    head(reporterMasses(ibspiked_set1))
    proteinGroup(ibspiked_set1)
    isotopeImpurities(ibspiked_set1)

    # create new object
    set.seed(123)
    data <- data.frame(spectrum=letters,
                       peptide=sample(c("pepA","pepB","pepC"),26,TRUE),
                       start.pos=1,
                       modif=sample(c("::X:::",":Y::::","::Z:::"),26,TRUE),
                       accession=c("protein1","protein2"))
    data.ions <- matrix(rnorm(26*2,1000,50),
                        ncol=2,dimnames=list(letters,NULL))
    data.mass <- matrix(rep(c(126.1,127.1),26),
                        ncol=2,byrow=TRUE,dimnames=list(letters,NULL))
    ib <- new("TMT2plexSpectra",data,data.ions,data.mass)
    ib
    reporterIntensities(ib)
    isotopeImpurities(ib) <- matrix(c(0.8,0.1,0.2,0.9),nrow=2)
    reporterIntensities(correctIsotopeImpurities(ib))

[Package isobar version 1.26.0 Index]