轉錄因子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
首先提取出本身的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的工具
參考: