xraw
in a cellHTS object.
This is done separately for each plate, replicate and channel.
Optionally, a data transformation such as log
, and a
transformation to z-scores can be performed.
normalizePlates(x, normalizationMethod="median", transform, zscore, posControls, negControls, ...)
cellHTS
object that has already been configured. See details."median"
(default), "mean"
,
"shorth"
, "POC"
, "NPI"
, "negatives"
and Bscore
. See details.log
.normalizationMethod
. Currently, this is only used for Bscore
. cellHTS
, which is a copy of the argument
x
, plus an additional slot xnorm
containing the normalized
data. This is an array of the same dimensions as xraw
.Moreover, the processing status of the cellHTS
object is updated
in the slot state
to x$state["normalized"]=TRUE
.Additional outputs may be given if
adjustPlates="Bscore"
. Please refer to the help page of
the Bscore
function.
normalizationMethod="median"
(median scaling), plates effects are corrected by dividing each measurement by the median value across wells annotated as sample
in x$wellAnno
, for each plate and replicate.
normalizationMethod="mean"
(mean scaling), the average in the sample
wells is consider instead.
normalizationMethod="shorth"
(scaling by the midpoint of the shorth), for each plate and replicate, the midpoint of the shorth
of the distribution of values in the wells annotated
as sample
is calculated. Then, every measurement is divided by this value.
normalizationMethod="POC"
(percent of control), for each plate and replicate, each measurement is divided by the average of the measurements on the plate positive controls, and multiplied by 100.
normalizationMethod="negatives"
(scaling by the negative controls), for each plate and replicate, each measurement is divided by the median of the measurements on the plate negative controls.
normalizationMethod="NPI"
(normalized percent inhibition), each measurement is subtracted from the average of the intensities on the plate positive controls, and this result is divided by the difference between
the means of the measurements on the positive and the negative controls.
normalizationMethod="Bscore"
(B score), for each plate and replicate, the B score method is applied to remove plate effects and row and column biases. NOTE: if the argument 'transform' is given, the B score method is applied AFTER data transformation.
If transform
is not missing, the chosen data transformation is applied.
Most commonly, this option can be used to apply a log transformation.
If zscore
is not missing, a robust z-score for each individual
measurement will be determined for each plate and each well by
subtracting the overall median
and dividing by the overall
mad
. These are taken by considering
the distribution of intensities (over all plates) in the wells whose
content is annotated as sample
. The allowed values for
zscore
("+" or "-") are used to set the sign of the calculated z-scores.
For example, with a zscore="-"
a strong decrease in the signal will be represented by a positive z-score, whereas setting zscore="+"
,
such a phenotype will be represented by a negative z-score.
This option can be set to calculate the results to the commonly used convention.
The arguments posControls
and negControls
are required
for applying the normalization methods based on the control
measurements (that is, when normalizationMethod="POC"
, or
normalizationMethod="NPI"
, or
normalizationMethod="negatives"
).
posControls
and negControls
should be given as a vector
of regular expression patterns specifying the name of the positive(s)
and negative(s) controls, respectivey, as provided in the plate
configuration file (and stored in x$wellAnno
). The length of
these vectors should be equal to the number of reporters used in the
screen (dim(x$xraw)[4]
) or to dim(x$xnorm)[4]
, in case
x
contains multi-channel data that have been normalized by
combining the values from two or more channels.
By default, if posControls
is not given, pos will be
taken as the name for the wells containing positive
controls. Similarly, if negControls
is missing, by default
neg will be considered as the name used to annotate the
negative controls.
The content of posControls
and negControls
will be
passed to regexpr
for pattern matching within
the well annotation given in x$wellAnno
(see examples for
summarizeChannels
). The
arguments posControls
and negControls
are particularly
useful in multi-channel data since the controls might be reporter-specific, or
after normalizing multi-channel data.
Bscore
,
summarizeChannels
data(KcViabSmall)
x1 = normalizePlates(KcViabSmall, normalizationMethod="median", zscore="-")
## Not run:
# x2 = normalizePlates(KcViabSmall, normalizationMethod="Bscore", zscore="-")
# ## End(Not run)
Run the code above in your browser using DataLab