【生体情報メモ】HOMER DNA motifを探す
6123 ワード
What is HOMER?
HOMER is a software for motif discovery and ChIP-Seq analysis
HOMERソフトウェアはLinux command line basedで、DNA motif、たまにChIP-seqの分析(peak callingなど)を検索するのによく使われています.
インストールは次のように使用されます.
## Download and install homer (Hypergeometric Optimization of Motif EnRichment)
## // http://homer.salk.edu/homer/
## // http://blog.qiubio.com:8080/archives/3024
## pre-install: Ghostscript,seqlogo,blat
cd ~/biosoft
mkdir homer && cd homer
wget http://homer.salk.edu/homer/configureHomer.pl
perl configureHomer.pl -install
perl configureHomer.pl -install hg19
perl configureHomer.pl -install hg38
MACSで見つかったpeaksレコードファイルであれば、対応する列をHOMERに入力ファイルとして抽出する必要があります:
awk '{print $4"\t"$1"\t"$2"\t"$3"\t+"}' sample_peaks.bed >sample_homer.bed
awkに慣れていなければ手動で変更するしかありません.findMotifsGenome.pl sample_homer.bed hg19 motifDir -len 8,10,12
最後に入手したフォルダには詳細なページ版のレポートがあるので、多くの人がこのソフトウェアを使うのが好きで、HOMERというソフトウェアは大雑煮で、ほとんどの高フラックスシーケンシングデータの分析を解決することができます.ここで覚えているのはDNA motifの検索方法だけです。
findMotifs.pl
performs motif and gene ontology analysis with lists of Gene Identifiers, both promoter and mRNA motifs (See Gene ID Analysis Tutorial) .pl説明はHOMERのperlのシナリオです.findGO.pl
performs only gene ontology analysis with lists of Gene Identiifiers(Called by findMotifs.pl,See Gene Ontology Analysis)ここはfindGO機能ですが、私がもっとよく使うのはenrichRかDAVIDです.以上の2つのスクリプトはgene ID basedで、テキスト形式のgeneリストを用意するだけで使用できます.findMotifsGenome.pl
performs motif analysis from genomic positions(See Finding Motifs from Peaks)ゲノム内のpeakの位置からDNA motifを探すのが一般的です.シーケンシング方法によってはnon-coding promoterやintergenicなどの場所(つまりcoding gene promoterだけではないpeak)にあるためです.example: $ cd /Users/ye.liu/Desktop/OA_analysis_06/9_patients_downstream_analysis/2.data_cpm2_p7/DNA_motif/Homer/1.complete_enhancer_promoter_sets/data
$ findMotifsGenome.pl 1.tss_gained_DAPs_gene_189.txt.bed hg38 ./5.differential_output_size_400_1_to_3/ -bg 3.tss_lost_DAPs_gene_608.txt.bed -S 25 -len 8,10,12,13 -size 400
$ findMotifsGenome.pl 3.tss_lost_DAPs_gene_608.txt.bed hg38 ./6.differential_output_size_400_3_to_1/ -bg $ 1.tss_gained_DAPs_gene_189.txt.bed -S 25 -len 8,10,12,13 -size 400
$ findMotifsGenome.pl 2.tss_gained_DAPs_noncoding_91.txt.bed hg38 ./7.differential_output_size_400_2_to_4/ -bg 4.tss_lost_DAPs_noncoding_509.txt.bed -S 25 -len 8,10,12,13 -size 400
$ findMotifsGenome.pl 4.tss_lost_DAPs_noncoding_509.txt.bed hg38 ./8.differential_output_size_400_4_to_2/ -bg 2.tss_gained_DAPs_noncoding_91.txt.bed -S 25 -len 8,10,12,13 -size 400
ここではDifferential ATAC-Peak(DAP)を用いたmotifクエリを行い,2組のシーケンシング試料を比較するとgained DAPsとlost DAPs(試料群/対照群)が得られる.DAP annotationではpeakがcoding/noncoding gene promoter(TSS)付近(上下1 kb以内)でgene associated with DAP=DAGと呼ばれていますが、私はFANTOM CAT data set(2017 Nature)で行ったannotationを使っています.coding gene情報だけでなくnoncoding geneの情報も含まれているからです.IntergenicのDAPはここでは使っていません.だから私は4つのbed fileを持っています.それぞれ:
gained
lost
coding
file1_189
file3_608
non-coding
file2_91
file4_509
そして、gained DAGのみのde novo DNA motifとlost DAGのみのde novo DNA motifをそれぞれ検索します.backgroundについては、それぞれ対応するbed fileで背景peaksを作ります.したがって、file 1はfile 3よりもfile 5:DNA motifがlost coding DAPではなくgained coding DAPにのみ存在することを得た.(逆にfile 6が得られた)file 2はfile 4よりfile 7が得られたDNA motifはlost non-coding DAPではなくgained non-coding DAPのみであった.(逆にfile 8が得られる)file 1−4とは、bed file 5−8がHOMERのoutputであることを意味する.
次に比較したいのはDAP gainとDAP lostだけで、codingとnoncodingは含まれていません.だから、file 1とfile 2を結合してDAP gain file 3とfile 4を結合するのがDAP lostです.バカな方法でbedは名前を変えた.txtは、コピーを開くexcelに貼り付けてマージし、保存する.txt(macのwindowsとして保存するtxtフォーマット)を使用して、名前を変更します.bedは、コマンド
changeNewLine.pl
にも使用されます.そうでなければ、偽のbedファイルです.他に方法があることがわかりましたlinux command line:$ cat 1.tss_gained_DAPs_gene_189.txt.bed 2.tss_gained_DAPs_noncoding_91.txt.bed > gained_DAP.bed
こんなに速いですか.rbind?ファイル1とファイル2がそれぞれ何行あるかチェックしてみましょう(row)
$ cat 1.tss_gained_DAPs_gene_189.txt.bed |wc -l
188
$ cat 2.tss_gained_DAPs_noncoding_91.txt.bed |wc -l
90
では、統合されたファイルは188+90で、これだけの行があるはずです.
$ cat gained_DAP.bed |wc -l
278
#
$ wc -l < gained_DAP.bed
278
不安ならチェックしてterminalでbed fileを見てみましょう.方法1:
cat file
全出力方法2:head -n 5 file
or tail -n 6 file
ローカル出力$ head -n 10 gained_DAP.bed
chr10 110460031 110460730 ENSG00000273143.1 RP11-525A16.4
chr20 58622490 58623170 ENSG00000268941.1 MGC4294
chr5 174750778 174752030 ENSG00000266890.1 MIR4634
chr17 18985476 18985916 ENSG00000263045.1 RP11-28B23.1
chr16 1163540 1164037 ENSG00000259910.1 RP11-616M22.2
chr12 46524079 46525144 ENSG00000257496.1 RP11-474P2.4
chr9 129740242 129741064 ENSG00000255824.1 AL590369.1
chr11 132874516 132875011 ENSG00000255371.1 OPCML-IT2
chr8 27901080 27902479 ENSG00000253615.1 RP11-597M17.2
chr8 66176914 66178013 ENSG00000253138.1 LINC00967
次は同じ方法でlost_を得るDAP.bed
$ cat 3.tss_lost_DAPs_gene_608.txt.bed 4.tss_lost_DAPs_noncoding_509.txt.bed > lost_DAP.bed
$ wc -l < lost_DAP.bed
1017
bed fileの準備ができたらmotif検索を開始し、
$ pwd
/Users/ye.liu/Desktop/OA_analysis_06/9_patients_downstream_analysis/2.data_cpm2_p7/DNA_motif/Homer/1.complete_enhancer_promoter_sets/data/test
$ findMotifsGenome.pl gained_DAP.bed hg38 ./Gained_DAP_specific_motif_size_400/ -bg lost_DAP.bed -S 25 -len 8,10,12,13 -size 400
$ findMotifsGenome.pl lost_DAP.bed hg38 ./Lost_DAP_specific_motif_size_400/ -bg gained_DAP.bed -S 25 -len 8,10,12,13 -size 400
それぞれ30~40 minは使います.