- MACS14 安装
#http://liulab.dfci.harvard.edu/MACS/Download.html 从这里下载,一定不要去github上下!! $ tar xvzf MACS-1.4.2-1.tar.gz $ cd MACS-1.4.2 # 这一步需要 sudo 权限 $ python setup.py install -prefix /your_directory/
- sub-command
$ macs2 [-h] [--version] {callpeak,filterdup,bdgpeakcall,bdgcmp,randsample,bdgdiff,bdgbroadcall} # 7个主要功能 callpeak: 比对文件的峰值查找 bdgbroadcall: bedGraph输出的峰值查找 bdgbroadcall: bdfGraph 输出的峰值宽度 bdgcmp: 比较brdGraph两个信号追踪来减少噪声 filterdup: 删除相同位置的相同读取,然后调整可接收文件为 BED 格式 predictd: 通过比对文件预测 d 值或者片段尺寸 pileup: 堆积对齐阅读通过给定的扩展尺寸(片段尺寸或者MACS语言中 d 值) randsample: 随机抽样数目占总阅读数的百分比 refinepeak: (试验阶段)采用原始读取对齐方式,细化峰值峰值并给出前向后向标签的平衡分数。
- callpeak 常用参数说明
# 常用参数 -t/--theatment FILENAME 这是MACS唯一必需的参数,处理样本数据。 文件可以采用--format选项指定的任何支持的格式。 检查 - 格式的细节。 如果您有多个对齐文件,则可以将它们指定为“-t A B C”。 MACS将汇集所有这些文件。 -c/--control 控制组或者模拟数据文件,使用方法和 -t 相同 -n/--name 输出文件的文件名, 比如 'NAME_peaks.xls', 'NAME_negative_peaks.xls', 'NAME_peaks.bed' , 'NAME_summits.bed' -outdir 指定文件夹存放输出文件 -f/--format FORMAT 指定文件格式,"ELAND", "BED", "ELANDMULTI", "ELANDEXPORT", "ELANDMULTIPET" (for pair-end tags), "SAM", "BAM", "BOWTIE", "BAMPE" or "BEDPE". Default is "AUTO",'AUTO'一般在你合并不同文件格式的文件时有用,但不能识别'BAMPE','BEDPE',因此这两个格式的文明需要指定 -g/--gsize=GSIZE 实际对比基因组大小,hs(人类),mm(大鼠),(ce)线虫,dm(果蝇),或‘1.0e+9’或‘1000000’(可以上NCBI查,但一般小于实际基因组大小,因为有地方无法拼接,会用N代替,实际可比对会使80%左右) # 其他参数 -s/--tsize 二代测序读长,MACS会用前10个序列进行推测 -q/--qvalue 调用重要区域的qvalue(最小FDR),缺省值为0.05。 -p/-pvalue pvalue截止,如果被指定,代替qvalue,非峰可能性截取,默认1e-5 -m/--mfold 构建双峰模型时使用,默认是[5,50],表示选择那些倍数变化在5~10之间的富集区域。如果找不到100个区域构建模型,并且你还设置了--fix-bimodal时,它就会用--extsize参数继续分析 --nolambda 设置这个参数就意味着不用MACS推荐的动态lambda,而是使用背景lambda作为local lambda,也就是不考虑染色质结构等造成的局部偏误 --slocal,--llocal 这两个参数也是MACS用来计算动态lambda会用到,分别计算1kb内lambda(slocal)和10kb的lambda(llocal),目标是处理类似于开放染色质区域的效应。注,如果这两个参数太小,输入数据中的尖峰(sharp spike)就可能干掉显著性的peak。 --keep-dup 保留重复。默认MACS(auto)会使用二项分布估计每个位置上是否存在重复(默认是1,也就是每个位置上出现一个read的概率最大)。如果你前期已经去重,那就使用all省了这一步. --to-large 默认把大样本缩小和小样本一样小,该设置则是把小样本放大成和大样本一样大 --down-sample 如果你的电脑性能比较差,或者样本特别大,你希望快点看到一个差不多的结果,可以使用这个参数。MACS会对数据进行随机抽样,所以每次的结果会不太一样。如果结果是要发文章,不要用这个参数得到的结果。 -B/--bdg 以bedGraph格式存放fragment pileup, control lambda, -log10pvalue 和log10qvale. NAME_treat_pileup.bdg: 处理后数据 NAME_control_lambda.bdg: 对照局部的lambda值 NAME_treat_pvalue.bdg: 泊松检验的p值 NAME_treat_qvalue.bdg: Benjamini-Hochberg-Yekutieli 处理后的Q值 --call-summits MACS现在将重新分析信号轮廓的形状(取决于截止设置的p或q-分数)以对从一般程序调用的每个峰内的子峰进行去卷积 --verbose 0/1/2/3 输出的详细程度,0就是不想看到有输出 --diag 生成完整报表 # 如果需要查看更加宽的peak,可以加以下参数 --broad broad region最大长度是4d。其中d表示MACS的双峰模型两个peak的距离。结果会得到BED12格式文件,存放着附近高度附近的区域。由于要足够的宽,所以需要专门的参数进行统计学过滤。 --broad-cutoff 用于过滤broad得到的peak,默认是q值,如果设置-p就用p值。 # 如果数据为SE50或者SE100,为了更精准的找peak,需要建立双峰模型,就需要调整以下参数 --bw 仅用于模型构建的基因组扫描带宽,湿实验中预期的超声碎片大小 --nomodel 这个参数说明不需要MACS去构建模型,也就是说下面的参数除了--shift, --extsize外都会被无视。 --fix-biomodal 是否打开自动配对高峰模型过程。如果设置,当MACS未能建立配对模型时,它将使用标准设置,'--extsize'参数来扩展每个标签。如果设置,如果paried-peak模型失败,MACS将被终止 --shift 使用这个参数一定要谨慎,因为这个参数已经被--extsize取代了!这个参数是绝对的偏移值,会先于--extsize前对read进行延伸。MACS会通过建模的方式自动计算出read需要偏移的距离,除非你对自己的数据非常了解,或者前期研究都表明结合中心在read后面的那个位置上,你才能比较放心的用这个这个参数了。正数表示从5'往3'偏移延长到片段中心,如果是负数则是3'往5'偏移延长到片段中心。 如果是DNase-Seq数据:read来自于两个核小体中间,你想把测序read往两边延长用来平滑pileup信号,并且希望用来平滑的窗口是200bp,那么使用`--nomodel --shfit -100 --extsize 200'. 如果是nucleosome-seq数据:因为一个核小体大概有147bp DNA缠绕,于是就需要用半个核小体长度进行堆积(pipleup)用于小波分析。参数为--nomodel --shift 37 --extsize 73. --extsize MACS使用这个参数将read以5'-> 3'衍生至等长片段。比如说你知道你的转录因子的结合区域是200bp,那么参数就是--extsize 200。当且仅当--nomodel和--fix-bimodal设置使用。 # 对于双末端测序结果而言,它本身测的就是文库的两端,所以无需建立模型,偏移也没必要,只需要设置--nomodel
- 如果你想查看其它子命令的详细参数
$ macs2 COMMAND -h