blastx はクエリー配列が核酸で、それをアミノ酸配列に翻訳してから、タンパク質データベースに対して相同性検索を行うプログラムである。翻訳に関してフレームシフトを考慮して 3 通り、さらにクエリー配列の左から読むのと、右から読むのと 2 通りがあり、合計 6 通りの翻訳が行われる。
データベースを作成
マウスのタンパク質を例にする。マウスのタンパク質データは Ensembl (FTP) からダウンロードできる。この例では Mus_musculus.GRCm38.70.pep.all.fa.gz をダウンロードして、データベースの作成に用いる。ダウンロードしたファイルは gzip で圧縮されているので、まずこれを展開する。
gunzip Mus_musculus.GRCm38.70.pep.all.fa.gz
次に、ここで得た FASTA ファイルを makeblastdb
コマンドに与えて、blast 用のデータベースを作成する。ここでは、データベースの名前を MusProtDB と命名している。データベースの名前は任意に付けることができる。また、データベース化する配列がアミノ酸配列であることを示すために、-dbtype prot
を指定する。
makeblastdb -in Mus_musculus.GRCm38.70.pep.all.fa -dbtype prot -out MusProtDB -parse_seqids
makeblastdb
の実行が終了すると、ディレクトリに「MusProtDB.phr」、「MusProtDB.pog」、「MusProtDB.psi」、「MusProtDB.pin」、「MusProtDB.psd」、「MusProtDB.psq」のファイルが生成される。これらすべて合わせてデータベースとなる。
blastx による相同性検索
データベースを作成したのちに、そのデータベースに対して検索を行うことができるようになる。検索キーワードとして、次のような入力配列(クエリー配列)を用意し、FASTA ファイル(query.nucl.fa)に保存する。
>unknown
TCTTATTGACAGTGTCTTTTGCCTTACAGAAGCTTTGCAATTTTATAAATTTGT
CAATTCTCGATCTTAGAGCATAAGTACTGTTCTATTCAGGAATTTTTCCCCTAC
CAATATCTTCAAGGCTTTCCCCCACTTCTCCTCGTTTCACTGTCTCTGGTTTTA
TGTGCAGTTCCTTAATCCACTTAGATTTGACCTTAGTACAAGGAGATAGATCAA
TTCACGTTCTTCTACATGATAACCACCAGTTGGGCCATCATCATTTGTTGAA
次に、blastx
にデータベースのパス(-db
)、クエリー配列のファイルのパス(-query
)、そして出力結果を保存するファイルのパス(-out
)を指定して、検索を行う。
blastx -db MusProtDB -query query.nucl.fa -out result.txt
相同性検索の結果
blastx が正しく実行されると、ディレクトリに result.txt が生成される。result.txt の中身に検索結果が保存されている。
BLASTX 2.2.28+
Reference: Stephen F. Altschul, Thomas L. Madden, Alejandro A.
Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J.
Lipman (1997), Gapped BLAST and PSI-BLAST: a new generation of
protein database search programs, Nucleic Acids Res. 25:3389-3402.
Database: Mus_musculus.GRCm38.70.pep.all.fa
50,877 sequences; 22,940,597 total letters
Query= unknown
Length=268
Score E
Sequences producing significant alignments: (Bits) Value
lcl|ENSMUSP00000137325 pep:known chromosome:GRCm38:16:3945007:39... 27.7 1.6
lcl|ENSMUSP00000137628 pep:known chromosome:GRCm38:16:3945610:39... 27.7 1.8
blastx で利用できるオプション
blastx は以下のようなオプションを利用できる。
オプション | 意味 |
-query | クエリー配列のファイル名(入力ファイル)を指定 |
-query_loc | 入力ファイルの何文字から何文字目までをクエリー配列とするのかを指定 |
-db | データベース名を指定 |
-out | blast 検索結果を保存するファイル名を指定(出力ファイル) |
-outfmt | 出力ファイルのフォーマットを指定。 |
-evalue | E-value の閾値 |
-word_size | ワードサイズ |
-gapopen | 開始ギャップのペナルティ |
-gapextend | 伸長ギャップのペナルティ |
-matrix | スコアマトリックスを指定(BLOSUM62やPAM32などを指定) |
-threshold | ワードスコアの閾値。指定したワードサイズでデータベースに照合するとき、そのスコアが閾値以上の場合にのみ、blast 検索を開始する |