filterFeatureDefinitions | R Documentation |
filterFeatureDefinitions
allows to subset the feature definitions of
an XCMSnExp
object. Which feature definitions should be kept can be
specified with the features
argument that can be a logical
,
integer
or character
vector. The function returns the
XCMSnExp
with the reduced featureDefinitions
data frame.
The [
method allows to subset a XCMSnExp
object by spectra. Be aware that the [
method removes all
preprocessing results, except adjusted retention times if
keepAdjustedRtime = TRUE
is passed to the method.
[[
extracts a single Spectrum
object from an XCMSnExp
. The reported retention time is the
adjusted retention time if alignment has been performed on x
.
filterMsLevel
: reduces the XCMSnExp
object to spectra of the specified MS level(s). Chromatographic peaks
and identified features are also subsetted to the respective MS level. See
filterMsLevel
documentation for details and
examples.
The methods listed on this page allow to filter and subset
XCMSnExp
objects. Most of them are inherited from the
OnDiskMSnExp
object and have been adapted for
XCMSnExp
to enable subsetting also on the preprocessing
results.
filterFile
: allows to reduce the
XCMSnExp
to data from only certain files. Identified
chromatographic peaks for these files are retained while all eventually
present features (peak grouping information) are dropped. By default
also adjusted retention times are removed (if present). This can be
overwritten by setting keepAdjustedRtime = TRUE
.
filterMz
: filters the data set based on the
provided mz value range. All chromatographic peaks and features (grouped
peaks) falling completely within the provided mz value range are retained
(if their minimal mz value is >= mz[1]
and the maximal mz value
<= mz[2]
. Adjusted retention times, if present, are not altered by
the filtering.
filterRt
: filters the data set based on the
provided retention time range. All chromatographic peaks and features
(grouped peaks) the specified retention time window are retained (i.e. if
the retention time corresponding to the peak's apex is within the
specified rt range). If retention time correction has been performed,
the method will by default filter the object by adjusted retention times.
The argument adjusted
allows to specify manually whether filtering
should be performed by raw or adjusted retention times. Filtering by
retention time does not drop any preprocessing results nor does it remove
or change alignment results (i.e. adjusted retention times).
The method returns an empty object if no spectrum or feature is within
the specified retention time range.
split
splits an XCMSnExp
object into a list
of XCMSnExp
objects based on the provided parameter f
.
Note that by default all pre-processing results are removed by the
splitting, except adjusted retention times, if the optional argument
keepAdjustedRtime = TRUE
is provided.
filterFeatureDefinitions(x, features)
## S4 method for signature 'XCMSnExp,ANY,ANY,ANY'
x[i, j, ..., drop = TRUE]
## S4 method for signature 'XCMSnExp,ANY,ANY'
x[[i, j, drop = FALSE]]
## S4 method for signature 'XCMSnExp'
filterMsLevel(object, msLevel.,
keepAdjustedRtime = hasAdjustedRtime(object))
## S4 method for signature 'XCMSnExp'
filterFile(object, file, keepAdjustedRtime = FALSE)
## S4 method for signature 'XCMSnExp'
filterMz(object, mz, msLevel., ...)
## S4 method for signature 'XCMSnExp'
filterRt(object, rt, msLevel.,
adjusted = hasAdjustedRtime(object))
## S4 method for signature 'XCMSnExp,ANY'
split(x, f, drop = FALSE, ...)
x |
For |
features |
For |
i |
For |
j |
For |
... |
Optional additional arguments. |
drop |
For |
object |
A |
msLevel. |
For |
keepAdjustedRtime |
For |
file |
For |
mz |
For |
rt |
For |
adjusted |
For |
f |
For |
All subsetting methods try to ensure that the returned data is
consistent. Correspondence results for example are removed if the data
set is sub-setted by file, since the correspondence results are dependent
on the files on which correspondence was performed. Thus, some filter
and sub-setting methods drop some of the preprocessing results. An
exception are the adjusted retention times: most subsetting methods
support the argument keepAdjustedRtime
(even the [
method)
that forces the adjusted retention times to be retained even if the
default would be to drop them.
All methods return an XCMSnExp
object.
The filterFile
method removes also process history steps not
related to the files to which the object should be sub-setted and updates
the fileIndex
attribute accordingly. Also, the method does not
allow arbitrary ordering of the files or re-ordering of the files within
the object.
Note also that most of the filtering methods, and also the subsetting
operations [
drop all or selected preprocessing results. To
consolidate the alignment results, i.e. ensure that adjusted retention
times are always preserved, use the applyAdjustedRtime
function on the object that contains the alignment results. This replaces
the raw retention times with the adjusted ones.
Johannes Rainer
XCMSnExp
for base class documentation.
## Load some of the files from the faahKO package.
library(faahKO)
fs <- c(system.file('cdf/KO/ko15.CDF', package = "faahKO"),
system.file('cdf/KO/ko16.CDF', package = "faahKO"),
system.file('cdf/KO/ko18.CDF', package = "faahKO"))
## Read the files
od <- readMSData(fs, mode = "onDisk")
## Perform peak detection on them using the matched filter algorithm. Note
## that we use a large value for binSize to reduce the runtime of the
## example code.
mfp <- MatchedFilterParam(binSize = 5)
xod <- findChromPeaks(od, param = mfp)
## Subset the dataset to the first and third file.
xod_sub <- filterFile(xod, file = c(1, 3))
## The number of chromatographic peaks per file for the full object
table(chromPeaks(xod)[, "sample"])
## The number of chromatographic peaks per file for the subset
table(chromPeaks(xod_sub)[, "sample"])
basename(fileNames(xod))
basename(fileNames(xod_sub))
## Filter on mz values; chromatographic peaks and features within the
## mz range are retained (as well as adjusted retention times).
xod_sub <- filterMz(xod, mz = c(300, 400))
head(chromPeaks(xod_sub))
nrow(chromPeaks(xod_sub))
nrow(chromPeaks(xod))
## Filter on rt values. All chromatographic peaks and features within the
## retention time range are retained. Filtering is performed by default on
## adjusted retention times, if present.
xod_sub <- filterRt(xod, rt = c(2700, 2900))
range(rtime(xod_sub))
head(chromPeaks(xod_sub))
range(chromPeaks(xod_sub)[, "rt"])
nrow(chromPeaks(xod))
nrow(chromPeaks(xod_sub))
## Extract a single Spectrum
xod[[4]]
## Subsetting using [ removes all preprocessing results - using
## keepAdjustedRtime = TRUE would keep adjusted retention times, if present.
xod_sub <- xod[fromFile(xod) == 1]
xod_sub
## Using split does also remove preprocessing results, but it supports the
## optional parameter keepAdjustedRtime.
## Split the object into a list of XCMSnExp objects, one per file
xod_list <- split(xod, f = fromFile(xod))
xod_list
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.