The RangedSummarizedExperiment class is a matrix-like container where rows
represent ranges of interest (as a GRanges or GRangesList
object) and columns represent samples (with sample data summarized as a
DataFrame). A RangedSummarizedExperiment contains one or more
assays, each represented by a matrix-like object of numeric or other mode.
RangedSummarizedExperiment is a subclass of SummarizedExperiment and,
as such, all the methods documented in ?SummarizedExperiment
also work on a RangedSummarizedExperiment object. The methods documented
below are additional methods that are specific to RangedSummarizedExperiment
objects.
Usage
## Constructor
SummarizedExperiment(assays, ...)
## S4 method for signature 'SimpleList'
SummarizedExperiment(assays, rowData=NULL, rowRanges=GRangesList(),
colData=DataFrame(), metadata=list())
## S4 method for signature 'ANY'
SummarizedExperiment(assays, ...)
## S4 method for signature 'list'
SummarizedExperiment(assays, ...)
## S4 method for signature 'missing'
SummarizedExperiment(assays, ...)
## Accessors
rowRanges(x, ...)
rowRanges(x, ...) <- value
## Subsetting
## S4 method for signature 'RangedSummarizedExperiment'
subset(x, subset, select, ...)
## rowRanges access
## see 'GRanges compatibility', below
Arguments
assays
A list or SimpleList of matrix-like elements,
or a matrix-like object. All elements of the list must have the same
dimensions, and dimension names (if present) must be consistent
across elements and with the row names of rowRanges and
colData.
rowData
A DataFrame object describing
the rows. Row names, if present, become the row names of the
SummarizedExperiment object. The number of rows of the
DataFrame must equal the number of rows of the
matrices in assays.
rowRanges
A GRanges or
GRangesList object describing the ranges of
interest. Names, if present, become the row names of the
SummarizedExperiment object. The length of the
GRanges or GRangesList
must equal the number of rows of the matrices in assays.
If rowRanges is missing, a SummarizedExperiment
instance is returned.
colData
An optional DataFrame describing the
samples. Row names, if present, become the column names of the
RangedSummarizedExperiment.
metadata
An optional list of arbitrary content
describing the overall experiment.
...
For SummarizedExperiment, S4 methods list
and matrix, arguments identical to those of the
SimpleList method.
For rowRanges, ignored.
x
A RangedSummarizedExperiment object. The rowRanges setter
will also accept a SummarizedExperiment object and will first
coerce it to RangedSummarizedExperiment before it sets value on
it.
value
A GRanges or
GRangesList object.
subset
An expression which, when evaluated in the
context of rowRanges(x), is a logical vector indicating
elements or rows to keep: missing values are taken as false.
select
An expression which, when evaluated in the
context of colData(x), is a logical vector indicating
elements or rows to keep: missing values are taken as false.
Details
The rows of a RangedSummarizedExperiment object represent ranges
(in genomic coordinates) of interest. The ranges of interest are
described by a GRanges or a GRangesList object, accessible
using the rowRanges function, described below. The GRanges
and GRangesList classes contains sequence (e.g., chromosome) name,
genomic coordinates, and strand information. Each range can be
annotated with additional data; this data might be used to describe
the range or to summarize results (e.g., statistics of differential
abundance) relevant to the range. Rows may or may not have row names;
they often will not.
Constructor
RangedSummarizedExperiment instances are constructed using the
SummarizedExperiment function with arguments outlined above.
Accessors
In the following code snippets, x is a RangedSummarizedExperiment
object.
rowRanges(x), rowRanges(x) <- value:
Get or set the
row data. value is a GenomicRanges object. Row
names of value must be NULL or consistent with the existing
row names of x.
GRanges compatibility (rowRanges access)
Many GRanges and GRangesList operations are supported on
RangedSummarizedExperiment objects, using rowRanges.
See also ?shift,
?isDisjoint,
?coverage,
?findOverlaps, and
?nearest for more
GRanges compatibility methods.
Not all GRanges operations are supported, because
they do not make sense for RangedSummarizedExperiment objects
(e.g., length, name, as.data.frame, c, splitAsList), involve
non-trivial combination or splitting of rows (e.g., disjoin, gaps,
reduce, unique), or have not yet been implemented (Ops, map, window,
window<-).
Subsetting
In the code snippets below, x is a RangedSummarizedExperiment
object.
subset(x, subset, select):
Create a subset of x
using an expression subset referring to columns of
rowRanges(x) (including ‘seqnames’, ‘start’,
‘end’, ‘width’, ‘strand’, and
names(rowData(x))) and / or select referring to
column names of colData(x).
Extension
RangedSummarizedExperiment is implemented as an S4 class, and can be
extended in the usual way, using contains="RangedSummarizedExperiment"
in the new class definition.