Raw read counts are generated after quantification for each feature on all samples. These read counts need to be normalized prior to differential expression detection to ensure that samples are comparable.
This chapter covers the implementation of each normalization method. The Normalize counts option is available on the context-sensitive menu (Figure 1) upon selection of any quantified output data node or an imported feature count:
- Gene counts
- Transcript counts
- MicroRNA counts
- Cufflinks quantification
- Quantification
Selecting Methods
Select whether you want your data normalized on a per sample or per feature basis (Figure 2). Some transformations are performed on each value independently of others e.g. log transformation, and you will get an identical result regardless of your choice.
The following normalization methods will generate different results depending on whether the transformation was performed on samples or on features:
- Divided by mean, median, Q1, Q3, std dev, sum
- Subtract mean, median, Q1, Q3, std dev, sum
- Quantile normalization
Note that each task can only perform normalization on samples or features. If you wish to perform both transformations, run two normalization tasks successively. To normalize the data, click on a method from the left panel, then drag and drop the method to the right panel. Add all normalization methods you wish to perform. Alternatively, you can click on the green plus button () on each method to add it. Multiple methods can be added to the right panel and they will be processed in the order they are listed. You can change the order of methods by dragging each method up or down. To remove a method from the Normalization order panel, click the minus button () to the right of the method. Click Finish, when you are done choosing the normalization methods you have chosen.
Recommended Methods
For some data nodes, recommended methods are available:
- Data nodes resulting from Quantify to transcriptome (E/M) or Quantify data aligned to transcriptome tasks (Recommendation: Total Count, Add 0.0001)
- Cufflinks quantification data node (Recommendation: Add 0.0001)
If available, the Recommended button will appear. Clicking the button will populate the right panel (Figure 3).
Normalization Methods
Below is the notation that will be used to explain each method:
Symbol | Meaning |
---|---|
S | Sample |
F | Feature |
Xsf | Value of sample S from feature F (if normalization is performed on a quantification data node, this would be the raw read counts) |
TXsf | transformed value of Xsf |
C | Constant value |
b | Base of log |
- Absolute value
TXsf = | Xsf |
- Add
TXsf = Xsf + C
a constant value C needs to be specified
- Antilog
TXsf = bxsf
A log base value b needs to be specified from the drop-down list; any positive number can be specified when Custom value is chosen
- Divided by
When mean, median, Q1, Q3, std dev, or sum is selected, the corresponding statistics will be calculated based on the transform on sample or features option
Example: If transform on Samples is selected, Divide by mean is calculated as:
TXsf = Xsf/Ms
where Ms is the mean of the sample.
Example: If transform on Features is selected, Divide by mean is calculated as:
TXsf = Xsf/Mf
where Mf is the mean of the feature.
- Log
TXsf = logbXsf
A log base value b needs to be specified from the drop-down list; any positive number can be specified when Custom value is chosen - Logit
TXsf=logb(Xsf/(1-Xsf))
A log base value b needs to be specified from the drop-down list; any positive number can be specified when Custom value is chosen
- Lower bound
A constant value C needs to be specified,
if Xsf is smaller than C, then TXsf= C; otherwise, TXsf = Xsf
- Multiply by
TXsf = Xsf x C
A constant value C needs to be specified - Quantile normalization, a rank based normalization method.
For instance, if transformation is performed on samples, it first ranks all the features in each sample. Say vector Vs is the sorted feature values of sample S in ascending order, it calculates a vector that is the average of the sorted vectors across all samples --- Vm, then the values in Vs is replaced by the value in Vm in the same rank. Detailed information can be found in [1]. - RPKM (Reads per kilobase of transcript per million mapped reads [2])
TXsf = (109 * Xsf)/(TMRs*Lf)
Where Xsf is the raw read of sample S on feature F,
TMRs is the total mapped reads of sample S,
Lf is the length of the feature F,
If quantification is performed on an aligned reads data node, total mapped reads is the aligned reads. If quantification is generated from imported read count text file, the total mapped reads is the sum of all feature reads in the sample.
If the feature is a transcript, transcript length Lf is the sum of the lengths of all the exons. If the feature is a gene, gene length is the distance between the start position of the most downstream exon and the stop position of the most upstream exon. See Bullard et al. for additional comparisons with other normalization packages [3] - Subtract
When mean, median, Q1, Q3, std dev or sum is selected, the corresponding statistics will be calculated based on the transform on sample or features option
Example: If transform on Samples is selected, Subtract mean is calculated as:
TXsf = Xsf - Ms
where Ms is the mean of the sample
Example: If transform on Features is selected, Subtract mean is calculated as:
TXsf = Xsf - Mf
where Mf is the mean of the feature
- TMM (Trimmed mean of M-values)
The scaling factors is produced according to the algorithm described in Robinson et al [4]. The paper by Dillies et al. [5] contains evidence that TMM has an edge over other normalization methods. - TPM (Transcripts per million as described in Wagner et al [6])
The following steps are performed:
- Normalize the reads by the length of feature, it generate reads per kilobase
RPKsf = Xsf / Lf; - Sum up all the RPKsf in a sample
PRKs = ∑Ff=1 FRPKsf - Generate a scaling factor for each sample by normalizing the PRK of the sample to the sum PRK of all the samples
,
where TR is the total reads across all samples - Divide raw reads by the scaling factor to get TPM
TXsf = Xsf/Ks
- Normalize the reads by the length of feature, it generate reads per kilobase
- Total count(Reads per million)
TXsf = (106 x Xsf)/TMRs
where Xsf here is the raw read of sample S on feature F, and
TMRs is the total mapped reads of sample S.
If quantification is performed on an aligned reads data node, total mapped reads is the aligned reads. If quantification is generated from imported read count text file, the total mapped reads is the sum of all feature reads in the sample. - Upper quartile
The method is exactly the same as the LIMMA package [7].
The following is the simple summarization of the calculation:
- Remove all the features that have 0 read in all samples.
- Get the upper quartile in each sample, and divide the upper quartile by the total count of the sample.
- Upper quartile of a sample is scaled by the geometric mean of the upper quartile across all the samples.
- Raw reads of a sample on a feature is divided by the scaled upper quartile of the sample.
Normalization Report
The Normalization report includes the Normalization methods used, a Feature distribution table, Box-whisker plots of the Expression signal before and after normalization, and Sample histogram charts before and after normalization.
Normalization methods
A summary of the normalization methods performed. They are listed by the order they were performed.
Feature distribution table
A table that presents descriptive statistics on each sample, the last row is the grand statistics across all samples (Figure 4).
Expression signal
These box-whisker plots show the expression signal distribution for each sample before and after normalization. When you mouse over on each bar in the plot, a balloon would show detailed percentile information (Figure 5).
Sample histogram
A histogram is displayed for data before and after it is normalized. Each line is a sample, where the X axis is the range of the data in the node and the Y-axis is the frequency of the value within the range. When you mouse over a circle which represent a center of an interval, detailed information will appear in a balloon (Figure 6). It includes:
- The sample name.
- The range of the interval, “[ “represent inclusive, “)” represent exclusive.
- The frequency value within the interval
References
Bolstad BM, Irizarry RA, Astrand M, Speed, TP. A Comparison of Normalization Methods for High Density Oligonucleotide Array Data Based on Bias and Variance. Bioinformatics. 2003; 19(2): 185-193.
Mortazavi A, Williams BA, McCue K, Schaeffer L, Wold B. Mapping and quantifying mammalian transcriptomes by RNA-Seq. Nat Methods. 2008; 5(7): 621–628.
- Bullard JH, Purdom E, Hansen KD, Dudoit S. Evaluation of statistical methods for normalization and differential expression in mRNA-Seq experiments. BMC Bioinformatics. 2010; 11: 94.
- Robinson MD, Oshlack A. A scaling normalization method for differential expression analysis of RNA-seq data. Genome Biol. 2010; 11: R25.
- Dillies MA, Rau A, Aubert J et al. A comprehensive evaluation of normalization methods for Illumina high-throughput RNA sequencing data analysis. Brief Bioinform. 2013; 14(6): 671-83.
- Wagner GP, Kin K, Lynch VJ. Measurement of mRNA abundance using RNA-seq data. Theory Biosci. 2012; 131(4): 281-5.
- Ritchie ME, Phipson B, Wu D et al. Limma powers differential expression analyses for RNA-sequencing and microarray studies. Nucleic Acids Res. 2015; 43(15):e97.
Additional Assistance
If you need additional assistance, please visit our support page to submit a help ticket or find phone numbers for regional support.
Your Rating: | Results: | 7 | rates |