ASEFilter-class | R Documentation |
SpliceWiz implements a number of novel filters designed to exclude alternative splicing events (ASEs) that yield low-confidence estimates.
ASEFilter(
filterClass = c("Data", "Annotation"),
filterType = c("Depth", "Participation", "Consistency", "Modality", "Protein_Coding",
"NMD", "TSL", "Terminus", "ExclusiveMXE", "StrictAltSS"),
pcTRUE = 100,
minimum = 20,
maximum = 1,
minDepth = 5,
condition = "",
minCond = -1,
EventTypes = c("IR", "MXE", "SE", "A3SS", "A5SS", "AFE", "ALE", "RI")
)
filterClass |
Must be either |
filterType |
Must be a valid |
pcTRUE |
If conditions are set, what percentage of all samples in each of the condition must satisfy the filter for the event to pass the filter check. Must be between 0 and 100 (default 100) |
minimum |
Filter-dependent argument. See details |
maximum |
Filter-dependent argument. See details |
minDepth |
Filter-dependent argument. See details |
condition |
(default "") If set, must match the name of an experimental
condition in the NxtSE object to be filtered,
i.e. a column name in |
minCond |
(default -1) If condition is set, how many minimum number of
conditions must pass the filter criteria. For example,
if condition = "Batch", and batches are "A", "B", or "C", setting
|
EventTypes |
What types of events are considered for filtering. Must be
one or more of |
Annotation Filters
Modality: Filters for specific modalities of ASEs. All events
belonging to the specified EventTypes
are removed.
No additional parameters required.
Protein_Coding: Filters for alternative splicing or IR events involving protein-coding transcripts. No additional parameters required.
NMD: Filters for events in which one isoform is a predicted NMD substrate.
TSL: filters for events in which both
isoforms have a TSL level below or equal to minimum
Terminus: In alternate first exons, the splice junction must not be shared with another transcript for which it is not its first intron. For alternative last exons, the splice junction must not be shared with another transcript for which it is not its last intron
ExclusiveMXE: For MXE events, the two alternate casette exons must not overlap in their genomic regions
StrictAltSS: For A5SS / A3SS events, the two alternate splice sites must not be interupted by detected introns
Data Filters
Depth: Filters IR or alternative splicing events of transcripts
that are "expressed" with adequate Depth
as calculated by the
sum of all splicing and IR reads spanning the event. Events with
Depth
below minimum
are filtered out
Participation: Participation means different things to IR
and alternative splicing.
For IR, Participation refers to the percentage of the measured intron
covered with reads. Only introns of samples with a depth of intron
coverage (intron depth) above
minDepth
are assessed, where introns with coverage percentage
below minimum
are filtered out.
For non-IR ASEs, Participation refers to the percentage of
all splicing events observed across the genomic region
(SpliceOver metric) that is
compatible with either the included or excluded event. This prevents
SpliceWiz from doing differential analysis between two minor isoforms.
Instead of IntronDepth, in AS events SpliceWiz considers events where
the SpliceOver metric exceed minDepth
.
Then, events with a SpliceOver metric below minimum
are excluded.
We recommend testing IR events for > 70% coverage and AS
events for > 40% coverage as given in the default filters which can be
accessed using getDefaultFilters
Consistency: Skipped exons (SE) and mutually exclusive exons
(MXE) comprise reads aligned to two contiguous splice junctions.
Most algorithms take the average counts from both junctions. This
will inadvertently include transcripts that share one but not both
splice events. To check that this is not happening, we require both
splice junctions to have comparable counts.
This filter checks whether reads from each splice junction comprises
a reasonable proportion of the sum of these reads.
Events are excluded if either of the upstream or downstream
event is lower than total splicing events by a log-2 magnitude
above maximum
. For example, if
maximum = 2
, we require both upstream and downstream
events to represent at least 1/(2^2) = 1/4 of the sum of upstream
and downstream event. If maximum = 3
, then each junction must be at
least 1/8 of total, etc.
This is considered for each isoform of each event, and is NOT tested
when total (upstream+downstream) counts belonging to each isoform is
below minDepth
.
IR-events are also checked. For IR events, the upstream and downstream
exon-intron spanning reads must comprise a reasonable proportion of total
exon-intron spanning reads.
We highly recommend using the default filters, which can be acquired using getDefaultFilters
An ASEFilter object with the specified parameters
ASEFilter()
: Constructs a ASEFilter object
Run_SpliceWiz_Filters
# Create a ASEFilter that filters for protein-coding ASE
f1 <- ASEFilter(filterClass = "Annotation", filterType = "Protein_Coding")
# Create a ASEFilter that filters for Depth >= 20 in IR events
f2 <- ASEFilter(
filterClass = "Data", filterType = "Depth",
minimum = 20, EventTypes = c("IR", "RI")
)
# Create a ASEFilter that filters for Participation > 60% in splice events
# that must be satisfied in at least 2 categories of condition "Genotype"
f3 <- ASEFilter(
filterClass = "Data", filterType = "Participation",
minimum = 60, EventTypes = c("MXE", "SE", "AFE", "ALE", "A3SS", "A5SS"),
condition = "Genotype", minCond = 2
)
# Create a ASEFilter that filters for Depth > 10 in all events
# that must be satisfied in at least 50% of each gender
f4 <- ASEFilter(
filterClass = "Data", filterType = "Depth",
minimum = 10, condition = "gender", pcTRUE = 50
)
# Get a description of what these filters do:
f1
f2
f3
f4
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.