DiffBind Normalisation between Narrow/Broad Peaks from different peak callers
0
0
Entering edit mode
Yuan Tian ▴ 290
@yuan-tian-13904
Last seen 8 months ago
United Kingdom

Hi Everyone:

I want to analyze 5hmC(from hMeDIP-seq) with DiffBind. I want to analyse both Narrow and Broad peaks for 5hmC. I have some questions:

1. Best way to call Narrow/Broad peaks? Using MACS2 with --broad or SICER?

Previously I have used MACS2 for narrowPeak, so initially I am trying to MACS2 again, with --broad parameter. However, after calling, I think the "broad" peaks are quite similar to "narrow" peaks, by checking .narrowPeak and .broadPeak files. Also, after searching around, some researchers suggested SICER, then I tried it, the result looks better in my IGV plot (below).

In the below plot, the first two raws are Narrow/Broad peaks from same sample, calling against Input. The codes are:

macs2 callpeak -t  boundBamPath -c  inputBamPath -f BAM -g 3.0e9 --outdir macs2 -n NC24_Bnd_Away -B -q 0.1 # For narrow peak
macs2 callpeak --broad --broad-cutoff 0.05 -t  boundBamPath -c  inputBamPath -f BAM -g 3.0e9 --outdir macs2 -n NC24_Bnd_Away -B -q 0.1 # For broad peak

Also I paste my SICER code below, which generated the last row in below IGV plot (I don't know why it was put here):

sicer -t boundBamPath -c  inputBamPath -s hg38 -w 200 -rt 1 -f 150 -egf 0.74 -fdr 0.05 -g 600 -e 1000 -o sicer

IGV

So here comes my first question: Why the Broad peak from MACS2 are so similar with Narrow peaks from MACS2? Should I set other parameters more than --broad?

2. How to use DiffBind to "normalize" between SICER and MACS2 results?

Assuming I will take SICER's Broad Peaks, and MACS2's Narrow Peaks. I have successfully loaded them with DiffBind separately, so I have now a DBA for NarrowPeaks (load with MACS2 .narrowPeak file), and a DBA for Broad Peaks (load with SICER .bed file). After some consensus peak count/normalisation (on narrow/broad DBA separately), and some matching, I get below two plots. The both y-axis in below plots are "5hmC value" I generated from the below code, but we can see the y-axis range varies a lot, because they are from different peak caller:

Narrow5hmCValue <- dba.peakset(myNarrowDBA, bRetrieve=TRUE) # So I get two 5hmC value matrix from narrow and broad DBAs separately.
Broad5hmCValue <- dba.peakset(myBroadDBA, bRetrieve=TRUE)

5hmC value across gene features

So here comes my second question: How can I compare/normalise the 5hmC value between Broad (from SICER) and Narrow (from MACS2) peaks?. These tools generated different format of data, and maybe their algorithm calculates the "Score" differently. How can I use DiffBind to "normalise" between them? If it's not possible, I hope I can find a better way to call the MACS2 broad peak, so that I can compare it with MACS2 narrow peak.

3. What is RPM over Input value for ChIP-SEQ?

Merely what I am trying to do now is similar to this paper's figure one. I did not quite get what is RPM over Input in Figure 1? I want to know how to generate this value with ChIP-SEQ data, since according to this plot, this RPM over Input value is comparable between different types of peaks

Personally, I think any "score" that can indicate "5hmC value" in chip data should be good to give me similar results. For example, my above boxplot looks a little bit similar to the Figure 1C, though the value is uncomparable between two plots, the trend of boxplot is what I am expecting. So I am not "insist" on any score like RPM over Input. However, I need to make sure the "Score" I use could be properly normalized between peak types, especially if the Narrow and Broad peaks are from different peak calling.

Sorry to post such a long and many questions, any small possible suggestion, code-debug, parameter-refine are very much welcome, and Thank You!

ChIPSeq SICER2 DiffBind MACS2 offtopic • 2.2k views
ADD COMMENT
0
Entering edit mode

This post does not fit the theme of this forum.

ADD REPLY

Login before adding your answer.

Traffic: 816 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6