Hi everyone, I'm using the DIffbind package and I'm noticing that there is a huge difference in the number of diff binding sites found by edgeR and Deseq2. I'm using the default options in dba.analize, just putting the object that I want to analyze and setting method=DBA_ALL_METHODS.
For example in a case edge finds 10397 peaks while deseq2 just 1. It's not always the same. Sometimes deseq2 finds more peaks than edge.
How can I choose the correct method?
How to explain these huge differences?
Some details:
samplesdbprova<-read.csv("SIRT30WT30.csv")
dbObjprova <- dba(sampleSheet=samplesdbprova)
bObjprova <- dba.count(dbObjprova,bUseSummarizeOverlaps=TRUE, minOverlap=2)
contrastprova <- dba.contrast(dbObjprova, dbObjprova$masks$SIRT630W, dbObjprova$masks$W20,"SIRT630w", "wt30")
bObjprova <- dba.analyze(contrastprova, method=DBA_ALL_METHODS)
Number of replicates: SIRT630=6 WT30=5
In one case (SIRT630) the factor (SIRT6) is overexpressed, in the other not. The chip was immunoprecipitated for SIRT6.
10000 vs 1 sounds suspicious. Still, without code it is difficult to debug. Can you add some command lines, number of replicates, design etc? Beyond that: https://support.bioconductor.org/p/79725/
Edit: I moved the details you provided to the toplevel question to keep things organized.