HOMER | MEME | 轉錄因子的靶基因預測 | motif富集分析

轉錄因子motif是一些很短的模序(~10bp),在大基因組裏很容易出現隨機比對,並且是以position weight matrix (PWM)格式來呈現,說明它的可變性,所以研究motif有哪些binding區域是沒有意義的,由於很難找到一個方法(閾值)來判斷真正的比對和隨機的比對。html

換個思路,若是作富集分析,那就穩了,給定一個指定的區域(promoter或enhancer區域),根據統計學檢驗,咱們很容易知道一個motif是否顯著富集在這個區域(與背景區域相比),這就回答了一個很好的生物學問題:這個轉錄因子是否顯著地結合到這片區域數據庫

一個突出的矛盾:轉錄調控的穩定性和咱們收集數據不肯定性之間的矛盾。express

爲何ChIP-seq和ATAC-seq能極大地助力motif研究:api

  • 真正的開放區域,獲得的都是active的區域
  • 過濾掉了大部分的無效或複雜區域,假陽性獲得了極大的控制

如何根據這些信息來預測每一個轉錄因子的binding區域以及靶基因?bash

  • 不考慮遠距離的調控做用,或者只考慮promoter的區域,咱們就能夠根據peak的註釋信息找到最近的基因。
  • 而後看這些promoter上分別有哪些富集的motif,而後與轉錄因子對應便可。
  • 最後還須要基因表達來確認這些靶基因和轉錄因子確實是表達的!(若是這是一個抑制的轉錄因子,是否基因就不表達了)

 

轉錄因子的表達具備高度的組織特異性,並且已知的TF只有1000多個,基因有30000多個,因此一個TF的靶基因可能有幾百個,具備高度的時空組織特異性。curl

實驗的方法就暫且不說了,很是可靠,但成本高、耗費勞力。ide

最簡單的預測就是基於基因表達,co-expressed就是可能的靶基因,預測軟件一大把。工具

問題不少,首先理解假設:ui

1. TF的線性變化引發target gene的線性變化,他們線性相關;url

2. TF的調控是sparse的,

問題:

1. 有人說這根本就不是線性的,TF的yes or no,決定target gene的表達;

2. 不是線性相關,存在shift,前後的shift是廣泛存在的;

3. co-expression是沒法得出target關係的;

 

因此,如今你們都開始結合motif enrichment了,TF的靶向做用是靠motif與基因組DNA結合來執行的。

可是咱們不知道結合位點,因此大部分的富集都默認選擇了10kb的flanking region,motif很短,隨機比對會帶來不少假陽性。

如今,你們有open chromatin的數據了,知道了候選的結合區域,咱們就能夠更有效的預測了,這就是HOMER的預測功能。

最終,open chromatin仍是不許,由於DNA有三維結構,distal regulation是廣泛存在的。【TAD很火,能夠引入到模型中】

 

HOMER

HOMER Motif Analysis - 根據ChIP-seq和ATAC-seq的peak結果尋找可能binding的motif

Finding Enriched Motifs in Genomic Regions (findMotifsGenome.pl) - 核心的腳本

Finding Instance of Specific Motifs - 對人類和小鼠而言最有用的代碼,由於大部分motif已知,不必作denovo的motif預測。 

 

Motif Databases included in HOMER - HOMER最常使用的一些motif數據庫

HOMER的motif格式

jaspar - 最全的轉錄因子數據庫

下載全部human的TF對應的motif:連接

 

下載JASPER上的轉錄因子及其motif數據庫,這部分很重要是由於咱們不只須要motif的信息,並且須要motif對應的人類轉錄因子的信息。【須要用homer的工具進行格式轉換】

cd ~/softwares/miniconda3/share/homer-4.10-0/update
curl -O http://jaspar.genereg.net/download/CORE/JASPAR2020_CORE_vertebrates_non-redundant_pfms_jaspar.txt

perl ./motifs/parseJasparMatrix.pl JASPAR2020_CORE_vertebrates_non-redundant_pfms_jaspar.txt > jaspar.motifs

curl -O http://jaspar.genereg.net/download/CORE/JASPAR2020_CORE_vertebrates_redundant_pfms_jaspar.txt

perl ./motifs/parseJasparMatrix.pl JASPAR2020_CORE_vertebrates_redundant_pfms_jaspar.txt > jaspar.motifs

  

接下來就是全基因組的掃描了,找這些motif到底在哪binding【全基因組掃描過於費時,仍是指定區域比較好】

perl ~/softwares/miniconda3/bin/scanMotifGenomeWide.pl ~/softwares/miniconda3/share/homer-4.10-0/update/motifs/vertebrates/jaspar.motifs hg38 -5p -bed -int -homer2 -p 10

 

選取promoter區域來掃描,看motif的結合區域

perl ~/softwares/miniconda3/bin/findMotifsGenome.pl encc-enhancer-atac.promt.Homer.bed hg38 promt.motif -p 10 -size 200 -find jaspar.motifs > promt.jaspar.txt

 

結果如何過濾?

For example: findMotifsGenome.pl ERalpha.peaks hg18 MotifOutputDirectory/ -find motif1.motif > outputfile.txt

The output file will contain the columns:

  • Peak/Region ID
  • Offset from the center of the region
  • Sequence of the site
  • Name of the Motif
  • Strand
  • Motif Score (log odds score of the motif matrix, higher scores are better matches)

根據Motif Score來過濾掉一些質量過低的比對。

這個結果仍然不是我想要的,我只想知道,某個motif是否在一個promoter或enhancer區域顯著富集【相對於背景區域】

PositionID      Offset  Sequence        Motif Name      Strand  MotifScore
Peak_152271     -93     AGTAAG  Ahr::Arnt/MA0006.1/Jaspar       +       1.914416
Peak_152271     -85     CCCTTC  Ahr::Arnt/MA0006.1/Jaspar       +       2.895245
Peak_152271     -82     TTCAAG  Ahr::Arnt/MA0006.1/Jaspar       +       3.213699
Peak_152271     -75     GGCAGG  Ahr::Arnt/MA0006.1/Jaspar       +       4.644445
Peak_152271     -68     AGCTCC  Ahr::Arnt/MA0006.1/Jaspar       +       1.871856
Peak_152271     -65     TCCCTG  Ahr::Arnt/MA0006.1/Jaspar       +       6.391753
Peak_152271     -64     CCCTGG  Ahr::Arnt/MA0006.1/Jaspar       +       2.895245
Peak_152271     -63     CCTGGG  Ahr::Arnt/MA0006.1/Jaspar       +       2.895245
Peak_152271     -60     GGGATG  Ahr::Arnt/MA0006.1/Jaspar       +       4.687005
Peak_152271     -59     GGATGG  Ahr::Arnt/MA0006.1/Jaspar       +       1.508951
Peak_152271     -57     ATGGTG  Ahr::Arnt/MA0006.1/Jaspar       +       12.000225
Peak_152271     -55     GGTGAG  Ahr::Arnt/MA0006.1/Jaspar       +       11.552200

  

HOMER的這個peak註釋功能也是寫得很是全面:

 

 

 

 


MEME

FIMO scans a set of sequences for individual matches to each of the motifs you provide - 看motif是否顯著的富集在單獨的序列裏,須要把區域轉換爲fasta文件

CentriMo identifies known or user-provided motifs that show a significant preference for particular locations in your sequences - CentriMo能夠作motif是否顯著富集在一堆序列中,給出富集得分

看看這篇文章:Differential motif enrichment analysis of paired ChIP-seq experiments

FIMO

看一看sample output

FIMO Tutorial

首先提取出本身的fasta

能夠用bedtools

bedtools flank -i encc-enhancer-atac.promt.bed -g chrom.sizes -b 300 > encc.enhc.atat.promt.f300.bed
bedtools sort -i tmp2.bed > tmp3.bed
bedtools merge -i tmp3.bed -c 4 -o collapse
bedtools getfasta -fo

也能夠用Homer的工具

 

 

 

 

 

 

 

 

 

 

 

 


參考:

Homer軟件的介紹-最全面而詳細的找motif教程 

相關文章
相關標籤/搜索