使用HOMER进行peak calling

2019-12-19 15:41:08 浏览数 (1)

欢迎关注”生信修炼手册”!

HOMER是一款进行motif预测的软件,除此之外,该软件还集成了许多其他功能,可以识别用于分析chip_seq,RNA_seq,Hi-C等数据。本文主要介绍如何通过HOMER来进行peak calling。

在HOMER中,通过findPeaks这个命令来进行peak calling, 这个命令有以下多种模式,对应不同类型的peak的识别

  1. factor 这种模式用于识DNA和蛋白质结合位点,主要用于识别转录因子的结合位点,预测出来的peak的长度是一个固定的数值。
  2. histone 这种模式用于识别发生组蛋白修饰的区域,该模式识别到的peak长度不完全相同,是变化的数值。
  3. super 这种模式用于识别超级增强子。
  4. groseq 这种模式用于分析链特异性的GRO_seq数据
  5. tss 这种模式用于分析5’RNA_seq/CAGE/5’GRO_seq, 目的是识别promoter/TSS区域
  6. dnase 这种模式用于分析DNase_seq数据,目的是识别DNase酶超敏位点
  7. mC 这种模式用于识别DNA甲基化区域

对于chip_seq的peak calling而言,常用的模式就是factor, histone和super这3种模式。具体用法如下,分为两步

1. makeTagDirectory

比对基因组得到bam文件之后,首先用通过makeTagDirectory这个命令,生成一个文件夹,用法如下

代码语言:javascript复制
makeTagDirectory out_dir align.bam

输出目录文件如下

代码语言:javascript复制
├── chr1.tags.tsv
├── chr2.tags.tsv
├── chr3.tags.tsv
...
├── chrY.tags.tsv
├── tagAutocorrelation.txt
├── tagCountDistribution.txt
├── tagInfo.txt
└── tagLengthDistribution.txt

默认将每条染色体的比对情况有一个tags.tsv文件来存储,除此之外,还有几个以tag开头的文件,包含了一些简单的统计信息。

tagCountDistribution.txt包含了测序深度的分布信息,第一列为测序深度的值,第二列为对应的reads的比例。根据这个文件的前10行,在R里面可视化如下

对于chip样本而言,unique mapping reads的比例越高越好,所以可以看到测序深度为1的比例是最高的。

tagLengthDistribution.txt包含了reads的长度分布信息,第一列为长度,第二列为对应reads的比例, 在R里面可视化如下

可以对插入片段的长度分布有一个直观的了解。

tagAutocorrelation.txt用于评估测序数据正负链上测序深度分布的相关性,在R里面可视化如下

正负连的峰值间距离为插入偏度的长度。

2. findPeaks

分别对input和IP样本建立好tagdirectory之后就可以peak calling, 用法如下

代码语言:javascript复制
findPeaks ip_tagdir/ -i input_tagdir -style histone -o homer.peak.txt

输出结果和macs2的类似,分成了两部分,文件头尾以#开头的行为注释行,部分信息如下

peak对应的行示意如下

更多参数和细节请参考官方文档。

·end·

—如果喜欢,快分享给你的朋友们吧—

扫描关注微信号,更多精彩内容等着你!

0 人点赞