blastn は、塩基配列からなる入力配列と相同性を持つ塩基配列をデータベースから検索するプログラムである。アミノ酸には対応しておらず、アミノ酸配列に対して相同性検索を行う場合は blastp を使う。このページでは blastn の使用方法を紹介する。
データベースを作成
まず、検索対象となるデータベースを作成する。ここではマウスのゲノムデータベースを作成する。その元ファイルは Ensembl (FTP) からダウンロードできる。この例では、Mus_musculus.GRCm38.70.dna.toplevel.fa.gz をダウンロードして利用する。ファイルは gzip で圧縮されているため、まずは展開する。
gunzip Mus_musculus.GRCm38.70.dna.toplevel.fa.gz
次に、ここで得た FASTA ファイルを makeblastdb
コマンドに与えて、blast 用のデータベースを作成する。ここでは、データベースの名前を MusNuclDB と命名している。データベースの名前は任意に付けることができる。また、データベース化する配列が塩基配列であることを示すために、-dbtype nucl
を指定する。
makeblastdb -in Mus_musculus.GRCm38.70.dna.toplevel.fa -dbtype nucl -out MusNuclDB -parse_seqids
実行が終了すると、ディレクトリに「MusNuclDB.nhr」、「MusNuclDB.nog」、「MusNuclDB.nsi」、「MusNuclDB.nin」、「MusNuclDB.nsd」、「MusNuclDB.nsq」のファイルが生成されます。これら全部合わせてデータベースとなります。
この例では、Ensembl でダウンロードした全ゲノム配列を使用したが、独自に定義した配列を FASTA ファイル(.fa)に保存して、同様な手順でその FASTA ファイル中の配列をデータベース化することもできる。
blastn による相同性検索
データベースを作成したのちに、そのデータベースに対して検索を行うことができるようになる。検索キーワードとして、次のような入力配列(クエリー配列)を用意し、FASTA ファイル(query.nucl.fa)に保存する。
>unknown
TCTTATTGACAGTGTCTTTTGCCTTACAGAAGCTTTGCAATTTTATAAATTTGT
CAATTCTCGATCTTAGAGCATAAGTACTGTTCTATTCAGGAATTTTTCCCCTAC
CAATATCTTCAAGGCTTTCCCCCACTTCTCCTCGTTTCACTGTCTCTGGTTTTA
TGTGCAGTTCCTTAATCCACTTAGATTTGACCTTAGTACAAGGAGATAGATCAA
TTCACGTTCTTCTACATGATAACCACCAGTTGGGCCATCATCATTTGTTGAA
次に、blastn
にデータベースのパス(-db
)、クエリー配列のファイルのパス(-query
)、そして出力結果を保存するファイルのパス(-out
)を指定して、検索を行う。
blastn -db MusNuclDB -query query.nucl.fa -out result.txt
相同性検索の結果
検索が正しく行われるとディレクトリに result.txt が生成される。検索結果がこのファイルに保存されている。その一部が以下のようになっている。
BLASTN 2.2.28+
Reference: Zheng Zhang, Scott Schwartz, Lukas Wagner, and Webb
Miller (2000), A greedy algorithm for aligning DNA sequences, J
Comput Biol 2000; 7(1-2):203-14.
Database: Mus_musculus.GRCm38.70.dna.toplevel.fa
75 sequences; 3,783,309,620 total letters
Query= unknown
Length=268
Score E
Sequences producing significant alignments: (Bits) Value
lcl|1 dna:chromosome chromosome:GRCm38:1:1:195471971:1 REF 385 1e-104
lcl|13 dna:chromosome chromosome:GRCm38:13:1:120421639:1 REF 300 4e-79
lcl|6 dna:chromosome chromosome:GRCm38:6:1:149736546:1 REF 296 5e-78
lcl|15 dna:chromosome chromosome:GRCm38:15:1:104043685:1 REF 296 5e-78
lcl|5 dna:chromosome chromosome:GRCm38:5:1:151834684:1 REF 294 2e-77
lcl|2 dna:chromosome chromosome:GRCm38:2:1:182113224:1 REF 294 2e-77
blastn で利用できるオプション
オプション | 意味 |
-query | クエリー配列のファイル名(入力ファイル)を指定 |
-query_loc | 入力ファイルの何文字から何文字目までをクエリー配列とするのかを指定 |
-db | データベース名を指定 |
-out | blast 検索結果を保存するファイル名を指定(出力ファイル) |
-outfmt | 出力ファイルのフォーマットを指定。 |
-evalue | E-value の閾値 |
-word_size | ワードサイズ |
-gapopen | 開始ギャップのペナルティ |
-gapextend | 伸長ギャップのペナルティ |
-matrix | スコアマトリックスを指定(BLOSUM62やPAM32などを指定) |
-threshold | ワードスコアの閾値。指定したワードサイズでデータベースに照合するとき、そのスコアが閾値以上の場合にのみ、blast 検索を開始する |