blastとblast+
研究室のクラスタマシンはblastで、自宅のMBPにはblast+が入っててメンドイ。blast+の方が高性能っぽいしクラスタの方にも入れたい。
とりあえず自分が使うときのblast+の方のblastnのコマンドメモ。
blastn -query query.fasta -db yeast.nt -out result.out -evalue 0.01 -outfmt "7 qseqid sseqid length mismatch gapopen qstart qend sstart send evalue qseq sseq"
- -queryで検索するファイル指定
- -dbで参照するデータベース指定
- -outで出力ファイル指定
- -evalueでevalueの上限指定(デフォルトは10。大きすぎない?)
- -outfmtは出力のフォーマット指定。0から9の数字で指定。ヘルプを見ると
0 = pairwise,
1 = query-anchored showing identities,
2 = query-anchored no identities,
3 = flat query-anchored, show identities,
4 = flat query-anchored, no identities,
5 = XML Blast output,
6 = tabular,
7 = tabular with comment lines,
8 = Text ASN.1,
9 = Binary ASN.1,
10 = Comma-separated values,
11 = BLAST archive format (ASN.1)
だそう。デフォルトは0。あとで処理することを考えると6か7のタブ区切りが便利?
6, 7, 10 は出力する情報を細かく設定できて、その時は
-outfmt "7 qseqid sseqid length mismatch gapopen qstart qend sstart send evalue qseq sseq"
みたいに書く。出力できる情報は以下。
(自分で使ったことあるのだけ日本語訳した)
引数 | 意味 |
---|---|
qseqid | クエリの配列名 |
qgi | Query GI |
qacc | Query accesion |
qaccver | Query accesion.version |
sseqid | 検索対象の配列名 |
sallseqid | All subject Seq-id(s), separated by a ';' |
sgi | Subject GI |
sallgi | All subject GIs |
sacc | Subject accession |
saccver | Subject accession.version |
sallacc | All subject accessions |
qstart | クエリの中のアラインメントの開始位置 |
qend | クエリの中のアラインメントの終了位置 |
sstart | 検索対象の配列のアライメントの開始位置 |
send | 検索対象の配列のアラインメントの終了位置 |
qseq | クエリのアラインメント配列 |
sseq | 検索対象のアラインメント配列 |
evalue | E-value |
bitscore | Bit score |
score | Raw score |
length | アラインメントの長さ |
pident | Percentage of identical matches |
nident | Number of identical matches |
mismatch | アラインメントのミスマッチ数 |
positive | Number of positive-scoring matches |
gapopen | ギャップの開始位置の数 |
gaps | ギャップ数 |
ppos | マッチの割合% |
frames | Query and subject frames separated by a '/' |
qframe | Query frame |
sframe | Subject frame |
btop | Blast traceback operations (BTOP) |
デフォルトは
qseqid sseqid pident length mismatch gapopen qstart qend sstart send evalue bitscore
で、これを指定したかったら"std"と書けばOK。