This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Scaling vs normalization in bamCompare

Hello, I'm analyzing some ChIP-seq data (bam files) through deepTools' bamCoverage and bamCompare. I'm new to biological data analysis and I don't understand the difference between scaling (option --scaleFactorsMethod in bamCompare) and normalizing (option --normalizeUsing).

BamCompare doesn't allow the usage of both (scaling the 2 compared bam files and individually normalizing the bam files).

My questions are:

  • What do they mean with scaling? When should I use it?

  • What do they mean with normalization? When should I use it?

Which one accounts for sequencing depth?

Thanks,

Lorenzo

chip-seq genome

1 answer

Normalizing put values on a (somewhat) universally coherent value range. For example, --normalizeUsing RPGC will normalize the sample(s) to 1x coverage before proceeding. Scaling is done when you have 2 samples and needs to be done to make them comparable (i.e., it corrects for differences in sequencing depth).

  • Using normalization whenever you need to compare multiple samples, or when it's the relative change in signal that matters (e.g., ChIP-seq)
  • Scaling alone should be used when you need to compare samples but need the output to mimic the raw read densities. This is often useful for things like ribosomal-profiling.

For ChIP-seq stick to normalization.

Thanks for the quick and effective answer!

Log in to answer this question.