天天看點

使用ROSE尋找超級增強子

一、工具介紹

ROSE(RANK ORDERING OF SUPER-ENHANCERS)是麻省理工學院Richard A. Young實驗室開發的一種通過bam檔案及gff檔案尋找enhancer及其相關基因的工具,此工具由python編寫。項目首頁:http://younglab.wi.mit.edu/super_enhancer_code.html

使用ROSE尋找超級增強子

二、ROSE在伺服器上的安裝

ROSE依賴軟體有:Python 2.7.3, R 2.15.3, 和 SAMtools 0.1.18,是以在安裝ROSE前,首先確定伺服器上安裝了這三個工具。關于這三個工具的安裝,可以檢視這篇博文: RNA-seq分析伺服器安裝生信工具過程。

ROSE安裝方式見以下代碼:

wget https://bitbucket.org/young_computation/rose/get/a9bb86b5464.zip
unzip a9bb86b5464.zip
# 解壓後檔案見下圖,可以直接通過python *.py調用工具
           
使用ROSE尋找超級增強子

三、具體使用

ROSE的最主要用法有

ROSE_main.py

ROSE_geneMapper.py

。其中

ROSE_main.py

用于尋找增強子而

ROSE_geneMapper.py

用于為增強子相關的基因進行注釋。

  • ROSE_mian.py 用法
python ROSE_main.py -g GENOME_BUILD -i INPUT_CONSTITUENT_GFF \
-r RANKING_BAM -o OUTPUT_DIRECTORY \
[optional: -s STITCHING_DISTANCE -t TSS_EXCLUSION_ZONE_SIZE -c CONTROL_BAM]

# 參數解釋
-g  refseq參考基因組
-i  輸入gff檔案,一般為使用MACS鑒定得到的Med1富集區域(gff具體格式下文介紹)
-r  排序後的bam檔案,同時需為bam添加index
-o  輸出檔案目錄

#可選參數
-s  STITCHING_DISTANCE,合并兩個region的最大距離,預設值為kb
-t  TSS_EXCLUSION_ZONE_SIZE,排除TSS區域大小,排除與TSS前後某距離内的區域,以排除啟動子偏差(預設值:;推薦值:)。如果設定該值為,将不會查找基因。
-c  CONTROL_BAM,control樣本的bam檔案
           

輸入檔案格式要求:

bam檔案格式要求:需要排序和建構index(samtools可以操作),bam檔案的染色體id需要以chr開頭。

gff檔案格式要求:gff檔案必須有以下列

1.染色體位置(chr#)

2.每個增強子區域的特定id

4.區域起始位置

5.區域終止位置

7.正負鍊資訊(+, -, .)

gff格式參考:https://genome.ucsc.edu/FAQ/FAQformat.html#format3

ROSE也有轉換bam為gff的工具,在運作

ROSE_mian.py

時,會調用

ROSE_bamToGFF.py

ROSE_main.py

運作執行個體:

python $SOFT_PATH/ROSE_main.py -g HG38 -i $WORK_PATH/gtf/KYSE510_peaks.bed \
-r $WORK_PATH/samtools_sort/sort_treat1.bam -c $WORK_PATH/samtools_sort/sort_control1.bam \
-o $WORK_PATH/ROSE/KYSE510 -s  -t  >$LOG_PATH/KYSE510_enhancer.log
           

其中,更多基因組可以從https://github.com/linlabbcm/rose2/tree/master/rose2/annotation擷取儲存到ROSE的annotation檔案夾,但是需要注意修改相應ROSE_mian.py的相應代碼。

輸出檔案如下:

1.

**OUTPUT_DIRECTORY/gff/*.gtf

該檔案為輸入gtf檔案的副本;

2.

**OUTPUT_DIRECTORY/gff/*STITCHED*.gtf

該檔案為通過在STITCHING_DISTANCE将INPUT_CONSTITUENT_GFF拼接在一起建立的gff檔案;檔案列數如下:

chrom, name, [blank], start, end, [blank], [blank], strand, [blank], [blank], name

其中

name

字段的命名方式為:拼接起來的區域數+最左端區域ID。

3.

**OUTPUT_DIRECTORY/mappedGFF/*_MAPPED.gff

每個bam檔案通過bamToGFF的輸出檔案,包含以下列:

(成分ID,測試區域,平均讀取密度(機關為每百萬位元每百萬映射的機關讀數密度))

4.

**OUTPUT_DIRECTORY/mappedGFF/* _STITCHED * _MAPPED.gff

每個bam檔案通過bamToGFF的輸出檔案,該檔案中對增強子區域進行了拼接,包含以下列:

(拼接增強子ID,測試區域,平均讀取密度(機關為百萬映射每機關拼接增強子數))

5.

**OUTPUT_DIRECTORY/STITCHED_ENHANCER_REGION_MAP.txt

bamToGFF計算後得到的拼接增強子密度檔案,包含以下列:

(拼接增強子ID,染色體,拼接增強子起始位置,拼接增強子末端位置,拼接數,BAM信号等級,BAM信号)

6..

**OUTPUT_DIRECTORY/*_AllEnhancers.table.txt

增強子清單,包含每個增強子的排名和是否為超級增強子,包含以下列:

(增強子ID,染色體,拼接增強子起始位點,拼接增強子末端,拼接數,拼接成分大小,BAM的信号,BAM的等級,是否為超增強子:是(1)否(0))

7.

**OUTPUT_DIRECTORY/* _SuperEnhancers.table.txt

超級增強子的排名,為

*_AllEnhancers.table.txt

檔案的子集。包含以下列:

(拼接增強劑ID,染色體,拼接增強子起始位點,拼接增強子末端,拼接數,縫合在一起的成分的大小,RANKING_BAM的信号,RANKING_BAM的等級,超增強子的二進制(1)與典型(0))

8.

**OUTPUT_DIRECTORY/*_Enhancers_withSuper.bed

可以加載到UCSC浏覽器中可視化的增強子bed檔案

9.

**OUTPUT_DIRECTORY/*_Plot_points.png

所有增強子散點圖,如下圖:

使用ROSE尋找超級增強子
  • ROSE_geneMapper.py 用法
Usage: ROSE_geneMapper.py [options] -g [GENOME] -i [INPUT_ENHANCER_FILE]

# 參數解釋
-i INPUT    輸入ROSE_mian.py生成的enhancer table檔案
-g GENOME   輸入genome資訊(MM9,MM8,HG18,HG19等)  
-o OUT      輸出路徑
# 可選參數
-l GENELIST 要過濾的基因清單
-w WINDOW   搜尋基因距離,預設值為,bp
-f format   如果使用此參數,将保持原輸入檔案格式輸出
           

ROSE_geneMapper.py

運作執行個體:

python $SOFT_PATH/ROSE_geneMapper.py -i $WORK_PATH/ROSE/TE7/TE7_peaks_AllEnhancers.table.txt \
-g HG38 -o $WORK_PATH/ROSE/TE7 >$LOG_PATH/TE7_enhancer_anno.log
           

輸出檔案如下:

1.

**OUTPUT_DIRECTORY/*ENHANCER_TO_GENE.txt

enhancer重疊基因、附近基因以及最近的基因清單

2.

**OUTPUT_DIRECTORY/*GENE_TO_ENHANCER.txt

以每個基因為列名的和其相關的增強子位置資訊清單

得到這兩個表格即可對基因進行篩選然後進行GO及KEGG分析等。

下圖是運作兩工具的結果截圖:

使用ROSE尋找超級增強子

其中被紅框标注的部分是

ROSE_geneMapper.py

運作的結果。

繼續閱讀