随着测序技术的改进,染色质免疫沉淀和高通量测序(ChIP-Seq)在研究全基因组蛋白质-DNA相互作用方面越来越流行。为了解决芯片序列分析方法的不足,我们提出了基于模型的芯片序列分析(MACS),用于识别转录因子结合位点。MACS捕捉基因组复杂性的影响以评估富集芯片区域的重要性,并且MACS通过结合测序标签位置和方向的信息来提高结合位点的空间分辨率。MACS可以很容易地单独用于芯片序列数据,或用于增加特异性的对照样品。此外,作为一般的峰值调用者,MACS也可以应用于任何“DNA富集分析”,如果要问的问题很简单:我们可以在哪里找到比随机背景更重要的读取覆盖率。
MACS中有七个主要功能作为子命令。
子命令 | 描述 |
---|---|
callpeak | 主MACS2从对齐结果调用峰值的功能。 |
bdgpeakcall | 从bedGraph输出调用峰值。 |
bdgbroadcall | 从bedGraph输出调用宽峰。 |
bdgcmp | 比较bedGraph格式的两个信号轨道。 |
bdgopt | 操作bedGraph文件的得分列。 |
cmbreps | 结合重复分数的BEDGraphs。 |
bdgdiff | 基于成对的四个bedgraph文件的差分峰值检测。 |
filterdup | 删除重复读取,然后以BED / BEDPE格式保存。 |
predictd | 从对齐结果预测d或片段大小。 |
pileup | 堆积对齐读取(单端)或片段(配对端) |
randsample | 随机选择总读数的数量/百分比。 |
refinepeak | 采取原始读取对齐,细化峰值峰值。 |
- ### 1. conda 安装
- conda install macs2
-
- ### 2. 比对和统计
-
- bwa mem ref.fa test_read1.fq test_read2.fq > test_pe.sam # PE
-
- # bwa mem ref.fa test.fq.gz > test_pe.sam # SE
-
- samtools flagstat test_pe.sam
- # 保留只比对到一个位点的序列
- samtools view -bq test_pe.sam >test_unique.bam
- samtools flagstat test_unique.bam
-
- ###3. 去重
- macs2 filterdup -i test_unique.bam -g hs --keep-dup 1 -o test.bed
-
- # % redundancy in the .err file
-
- ### 3. Call peaks
-
- # without control
- macs2 call peaks -t test.bed -f AUTO -g hs -q <FDR cutoff> -fe-cutoff <fold change>
- --outdir path/to/save/your/output/dir -n output_prefix
-
- #-t/--treatment filename, -c/--control, -n/--output name, -f/--format of tag files
- #--outdir/--the folder where all the output files saved into, -n/--name of the output as NAME_peaks.bed
- #-g/--gsize The default hs -- 2.7e9 is recommended as for UCSC human hg18 assembly
- #-q/--qvalue (minimum FDR) cutoff to call significant regions. Default is 0.05.
-
- # with control
- macs2 call peaks -t treat.bed -c control.bed -f AUTO -g hs -q <FDR cutoff> -fe-cutoff <fold change>
- --outdir path/to/save/your/output/dir -n output_prefix
参考: