使用ROSE鉴定超级增强子
1.工具介绍
ROSE(RANK ORDERING OF SUPER-ENHANCERS)是麻省理工学院 Richard A. Young 实验室开发的一种通过 bam 文档及 gff 文档寻找 enhancer 及其相关基因的工具,此工具由 python 编写。项目主页:http://younglab.wi.mit.edu/super_enhancer_code.html
2.识别增强子过程
首先通过Oct4, Sox2, Nanog这3种转录因子的chip数据去识别小鼠胚胎干细胞中的增强子区域,鉴定到了8794个增强子区域。对于这些增强子,根据区域内对应的Med1这种转录激活通用辅助因子的chip_seq reads的密度进行排序,发现呈现两极分化趋势,示意如下

其中绝大部分的增强子对应的Med1的水平都很低,少部分增强子对应的Med1的水平非常高。除了Med1之外,还比较了其他几种转录因子或者组蛋白修饰的数据

发现Med1的区分效果最佳,根据Med1水平的高低,可以将增强子分为以下两类
1.typical enhancers
2.super enhancers
简称TE和SE, 进一步分析发现TE和SE在长度上具有非常明显的区别,SE的长度是TE长度的10倍以上,一个普通的增强子只有几百bp的长度,而超级增强子的长度在几千bp左右。


除了Med1之外,还比较了Qct4等多种转录因子在TE和SE中的分布,结果如下图所示


发现在SE中Klf4和Esrrb的分布比TE中更加丰富。对SE区域富集的motif进行分析,结果如下所示

发现富集到了Oct4, Sox2, Klf4等motif。从上述发现和定义超级增强子的过程可以看到,超级增强子的预测过程有以下两个关键点
1.建立在增强子的基础上,可以看做增强子富集的区域
2.相比增强子,超级增强子区域具有更高的转录因子的密度
ROSE这款程序也是根据这两个关键点来识别超级增强子,基本过程示意如下

首先识别增强子区域,然后对增强子进行合并,定义一个阈值,将距离小于该阈值的增强子进行合并,最后比较合并后的增强子区域内的reads分布情况来识别超级增强子。
在实际操作过程中,在第一步和第三步可以使用不同的

mark, 如下所示
软件基于python编程语言开发,直接从官网下载源代码,解压缩就可以了。源代码中内置了几个物种的注释数据库,存放在annotation文件夹下
annotation/
├── hg18_refseq.ucsc
├── hg19_refseq.ucsc
├── hg38_refseq.ucsc
├── mm10_refseq.ucsc
├── mm8_refseq.ucsc
└── mm9_refseq.ucsc
2.软件安装
GitHub - stjude/ROSE: ROSE: RANK ORDERING OF SUPER-ENHANCERS
ROSE 依赖软件有:Python >3.4, R >2, 和 SAMtools, bedtools > 2 ,因此在安装 ROSE 前,首先确保服务器上安装了这三个工具。
wget https://github.com/rakarnik/ROSE/archive/refs/heads/master.zip
unzip master.zip
解压后文档见下图
解压后文档

然后将bin和lib目录里面的文件放到同一个文件夹下可以直接通过python *.py调用工具,移动目录

注意:源代码有问题,需要手动修改
修改一:打开ROSE_main.py文件,在394,401,481-485行的.py文件前加上python

修改二:打开ROSE_main.py文件,466,471行的.R文件前加Rscript

3.具体使用
需要注意一定要到软件的安装目录去运行,因为会在运行目录查找annotaton这个文件夹下的物种注释文件。
ROSE 的最主要用法有ROSE_main.py和ROSE_geneMapper.py。其中ROSE_main.py 用于寻找增强子而ROSE_geneMapper.py 用于为增强子相关的基因进行注释。
ROSE_mian.py 用法
python ROSE_main.py \
-g HG18 \
-i HG18_MM1S_MED1.gff \
-r MM1S_MED1.hg18.bwt.sorted.bam \
-c MM1S_WCE.hg18.bwt.sorted.bam \
-o out_dir \
-s 12500 \
-t 2500
-g hg18、hg19、mm8、mm9或mm10,用于构建UCSC参考基因组
-i 输入gff文档,一般为使用MACS鉴定得到的Med1富集区域(gff具体格式下文介绍),后面的gff文件可以直接用MACS2的narrowPeak结果,但是文件名称要以bed结尾
-r 排序后的bam文档,同时需为bam添加index,参数指定chip_seq中IP样本的bam文件
-o 输出文档目录
# 可选参数
-s STITCHING_DISTANCE,指定合并增强子的距离,默认为12.5kb, 小于该距离的两个增强子会合并为一个区间
-t TSS_EXCLUSION_ZONE_SIZE,排除TSS区域大小,排除与TSS前后某距离内的区域,以排除启动子偏差(默认值:0;推荐值:2500)。如果设置该值为0,将不会查找基因。这是在指定距离TSS的距离,如果一个peak与某个转录起始位点的距离小于指定的距离,则有可能是一个启动子,这种潜在的启动子会被过滤掉。
-c 指定Input样本的bam文件。
需要注意一定要到软件的安装目录去运行,因为会在运行目录查找annotaton这个文件夹下的物种注释文件。
输入文档格式要求:
bam 文档格式要求:需要排序和构建 index(samtools 可以操作),bam 文档的染色体 id 需要以 chr 开头。
gff 文档格式要求:gff 文档必须有以下列
1.染色体位置(chr#)
2.每个增强子区域的特定 id
4.区域起始位置
5.区域终止位置
7.正负链信息(+, -, .)
gff 格式参考:https://genome.ucsc.edu/FAQ/FAQformat.html#format3
上述没有要求的列,内容可以为空或者原来的内容,但是一定要有这一列,如果第2列和第9列的内容不同,ROSE将使用第2列的值。ROSE额外提供的测试数据包里的gff文件范例如下:

1.关于gff文件:虽然一些教程说可以直接使用call peak生成的.bed文件替代.gff文件,ROSE也可以自己转换出gff文件,但是前期使用narrowPeak.bed文件一直没有跑通,出现报错。也许是我们采用MACS分析获得的narrowPea.bed在某些格式上是ROSE不能识别的,所以最后还是老老实实的自己做了gff文件。
制作方法
awk '{print $1"\t"$4"\t""\t"$2"\t"$3"\t""\t"".""\t""\t"$4}' xx.narrowPeak > xx.gff
2.call peak生成的narrowPeak或broadPeak里面会生成随机序列,需删除,rose只能识别1-22号染色体和性染色体


4.输出结果文件
ROSE输出的结果都在一个文件夹里,文件夹名称是参数 -o 自己设置的文件夹名。v1.3.1版输出的结果文件包括2个文件夹和9个文件夹外文件。以测试结果为例,如下图:
