ct.normalizeGuides {gCrisprTools} | R Documentation |
This function normalizes Crispr gRNA abundance estimates contained in an ExpressionSet
object.
Currently four normalization methods are implemented: median scaling (via normalizeMedianValues
), slope-based
normalization (via ct.normalizeBySlope()
), scaling to the median of the nontargeting control values (via
ct.normalizeNTC()
), and spline fitting to the distribution of the nontargeting gRNAs (via ct.normalizeSpline()
).
Because of the peculiarities of pooled Crispr screening data, these implementations may be more stable than the endogenous methods
used downstream by voom. See the respective man pages for further details about specific normalization approaches.
ct.normalizeGuides( eset, method = c("scale", "FQ", "slope", "controlScale", "controlSpline"), annotation = NULL, sampleKey = NULL, lib.size = NULL, plot.it = FALSE, ... )
eset |
An ExpressionSet object with integer count data extractable with |
method |
The normalization method to use. |
annotation |
The annotation object for the library, required for the methods employing nontargeting controls. |
sampleKey |
An (optional) sample key, supplied as an ordered factor linking the samples to experimental
variables. The |
lib.size |
An optional vector of voom-appropriate library size adjustment factors, usually calculated with |
plot.it |
Logical indicating whether to plot the ranked log2 gRNA count distributions before and after normalization. |
... |
Other parameters to be passed to the individual normalization methods. |
A renormalized ExpressionSet. If specified, the sample level counts will be scaled so as to maintain the validity
of the specified lib.size
values.
Russell Bainer
ct.normalizeMedians
, ct.normalizeBySlope
, ct.normalizeNTC
, ct.normalizeSpline
data('es') data('ann') #Build the sample key as needed library(Biobase) sk <- ordered(relevel(as.factor(pData(es)$TREATMENT_NAME), "ControlReference")) names(sk) <- row.names(pData(es)) es.norm <- ct.normalizeGuides(es, 'scale', annotation = ann, sampleKey = sk, plot.it = TRUE) es.norm <- ct.normalizeGuides(es, 'slope', annotation = ann, sampleKey = sk, plot.it = TRUE) es.norm <- ct.normalizeGuides(es, 'controlScale', annotation = ann, sampleKey = sk, plot.it = TRUE, geneSymb = 'NoTarget') es.norm <- ct.normalizeGuides(es, 'controlSpline', annotation = ann, sampleKey = sk, plot.it = TRUE, geneSymb = 'NoTarget')