序 言
macs2
作为callpeak
的工具提供了双峰模型来矫正信号的功能,使得到的信号可以呈现为一个单峰。下面用一张图来说明软件做的事情,来对比一下矫正前后信号峰呈现的形式。
上图中IP
、Input
来自于macs2
生成的信号文件,IP_raw
、Input_raw
转换自bam
文件,Bam_coverage
即为bam的覆盖度。很明显可以看出,macs2
对信号做了偏移矫正,所以信号呈现的为单峰,而没有矫正信号则呈现最原始的状态为双峰。造成这个现象的原因是测序获取的大量reads仅仅来自DNA片段 (fragment) 的两端,所以当reads回帖到基因组后自然而然就形成了的双峰。
比 较
针对这种情况,macs2
给出的解决方法是将双峰分别向中间移一移,这样两个峰就重合为一个峰了。具体的过程简单来说就是评估双峰峰顶之间的距离d
,然后将所有reads向3'端移动d/2
。当然,这些步骤都是软件默认自动建模完成,相对于自动建模,也可以手动设置参数--nolambda
、--shift
、--extsize
通过非建模的方式来完成。今天咱们就来看看这两种模型有什么区别。下面用测试数据来自NCBI
,SPI1
的ChIP-seq
数据,为了节约时间仅用1号染色体的数据。
1、建模
macs2 callpeak --SPMR -B -q 0.05 --keep-dup 1 -g 2.3e8 -n spi1 -t spi1_ip.dedup.bam -c spi1_in.dedup.bam
2、非建模
macs2 callpeak --SPMR -B -q 0.05 --keep-dup 1 --nomodel -g 2.3e8 -n spi1 -t spi1_ip.dedup.bam -c spi1_in.dedup.bam
当--nomodel
参数设定时,软件会自动使用参数--shift
、--extsize
,这两个参数默认值分别为0
、200
。
peak对比:
可以看出,两者的peak
位置绝大部分都是一致的,建模与否好像对callpeak
的结果几乎没有什么影响。下面再来看看信号分布情况:
可以看出两种模式,忽略信号高低,pattern
几乎一摸一样,再用两种模式下的peak
区域分别统计信号看看:
也可以看出model
和nomodel
的pattern
不能说毫无差别,可以说一摸一样。这些都指向一个解释:两种结果基本一致。奇怪的知识又增加了。。。
结 语
从上面的结果可以看出建模与否对callpeak
几乎没有什么影响,具体怎么用这里就不强调了。不过,这也从侧面印证了一句话:好的千篇一律,差的千奇百怪。这个句话放在数据上好像也挺切,好数据对参数和软件不敏感,怎么分析结果看起来都是那么顺眼。
往期回顾
有些软件总能以某种方式劝退你 | SpectralTAD 之 TAD calling
生信分析不只是跑个软件 | TADCompare 差异分析要留心
HiC术语图解与分析软件汇总
R语言揭秘 | $符鲜为人知的秘密,避坑预警
scRNA-seq稀疏矩阵图解,格式转换的核心
网友评论