Diffbind fold difference calculation
1
0
Entering edit mode
6 months ago
Amy • 0

Hi! In running DiffBind on several peaksets, I've been using the "Fold" metric reported by the "dba.report" function, along with q-value thresholding, to determine differential enrichment. Based on Diffbind's online documentation, I understand this "fold" metric to be calculated by subtracting the normalized read count of Group 2 samples from that of Group 1 samples.

Since DeSeq2 (the analysis option I've been using in DiffBind) itself uses a log fold-change metric rather than a difference metric, I'm wondering why DiffBind uses a subtraction in its "Fold" calculation instead? Wouldn't you expect to get pretty different results? Or is it that the normalized read counts of Group 1 and Group 2 are log normalized already, and therefore that the fold difference and fold change values are mathematically equivalent through some sort of log arithmetic?

diffbind normalization fold • 326 views
0
Entering edit mode
5 months ago
Rory Stark ★ 1.2k

The key is that these are log values, and subtracting log values is equivalent to dividing non-log values and then taking the log. eg.:

> log(150/36)
[1] 1.427116
> log(150) - log(36)
[1] 1.427116


NB: Since version 3.0, DiffBind has changed how the Fold values are reported. In the default case where a design formula is used, the Fold values included in the report are those calculated by the underlying differential analysis package (DESeq2 or edgeR). These may include shrinkage adjustments, and no longer correspond to a simple subtraction of log concentrations.