2009年6月26日金曜日

BLASTのインストールに挑戦

MyPC(Fedora)にBLASTをインストールする

----------------------------------------
(1) BLASTのバイナリ実行ファイルをNCBIからダウンロード
Linuxの実行イメージをncbiのftpサイトからダウンロードする

(Linux)
ftp://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST/blast-2.2.20-ia32-linux.tar.gz
FileSize: 25MByte

$ ftp ftp.ncbi.nlm.nih.gov
ftp> cd /blast/executables/LATEST/
ftp> ls
ftp> bin
ftp> get blast-2.2.20-ia32-linux.tar.gz
ftp> quit

# cd /usr/local
# gzip -dc ~user/tmp/blast-2.2.20-ia32-linux.tar.gz | tar xf -
$ ls
blast-2.2.20
$ ls blast-2.2.20
VERSION bin data doc
$ ls bin

----------------------------------------
(2) 実行イメージを/usr/local/binにシンボリックリンクする

# cd /usr/local/bin
# cp ../blast-2.2.20/bin/* ./

----------------------------------------
(3) PATHに/usr/local/binを登録する

$ cd ~
$ vi .bash_profile
PATH=$PATH:/usr/local/bin ← この行を追加する
$ . ./.bash_profile ← .bash_profileをsourceコマンドで実行する
$ echo $PATH ← /usr/local/binが反映されているか確認
$ blastall ← blastが起動されるか確認してみる

----------------------------------------
(4) BLASTDB,BLASTMAT,BLASTFILTERの環境整備

BLASTDBの保管場所を作成
# cd /db
# mkdir blast
# cd blast
# mkdir db data
# chown -R user:user /db/blast

BLASTMAT,BLASTFILTERの保管場所を作成
# cd /usr/local
# mkdir blast
# cd blast
# mkdir data db
# chown -R user:user /usr/local/blast

マトリックスファイルをシンボリックリンクする
# cd /usr/local/blast/data
# ln -s /usr/local/blast-2.2.20/data/* ./

----------------------------------------
(5) .ncbircにblastのデータとデータベースの保管場所を定義する

$ cd ~
$ touch .ncbirc
$ vi .ncbirc #以下の行を入れる
[NCBI]
Data=/db/blast/data ← BLASTを行うデータを入れておくフォルダ
$

------------------------------------------
(6) .bashrcにblastの環境を定義する

$ cd ~
$ vi .bashrc
export NCBI=/home/user # .ncbircが置かれている場所
export BLASTDB=/db/blast/db # データベース(検索用ライブラリ)の置き場
export BLASTMAT=/usr/local/blast/data # マトリックスファイルの置き場所(BLOSUMなどのアミノ酸置換マトリクス)
export BLASTFILTER=/usr/local/blast/db # リピートマスクのためのフィルタ
$ source ./.bashrc

------------------------------------------
(7) フラットファイル(FASTA)をNCBIからダウンロードする

$ cd /db/blast/db
$ ftp ftp.ncbi.nlm.nih.gov
ftp> cd blast/db/FASTA
ftp> *.gz

※blast形式のバイナリファイルは blast/db/にある

----------------------------------------
(8) FATA形式をBLASTフォーマットに変換する
(テキスト→バイナリ)

$ cd /db/blast/db
$ formatdb -i ./vector -p F -o T ← たとえばvectorファイルを変換

※「formatdb -i ファイル名 -n データベース名 -o [T/F] -p [T/F]」 という書式です。
-i オプションのファイル名はFASTA形式の入力ファイル名を指定。
-n オプションのデータベース名は適当で良いが、簡単に覚えられるものが良い。 デフォルトは入力ファイル名。
-o オプションはインデックスを作成する (T) か しない (F) かの選択です。
-p オプションはデータがアミノ酸 (T) か 核酸 (F) を指定します。
他のオプションについては「formatdb --help」を参照してください。

----------------------------------------
(9) blast検索に使用するqueryファイルを作成する

query.txt
>Test
CAAAGGTAACGAGGTAACAACCATGCGAGTGTTGAAGTTCGGCG

---------------------------------------
(10) blastallを実行する

$ blastall -p blastn -d vector -i query.txt -o blast.out -e 1e-10

blastall -p プログラム名 -d 検索データベース名 -i クエリ配列ファイル名 -o 出力ファイル名 -e E-Value

-p: blastの検索方法(blastn,blastp,blastx,tblastn,tblastx)
-d: 使用するデータベース(BLASTDBで定義したディレクトリ内にあるデータベース)
  複数DBの指定は(-d "est nt")のようにスペース区切りで指定。
  default: nr
-i: 問い合わせ配列の入ったファイル(queryファイル)
  default: stdin
-o: 結果を打ち出すファイル(BLAST report Output File)
  default: stdout
-e : E-Value値(Expectation value)
  default: 10.0

-------------------------------------
(11) BLASTの種類

blastn : 通常のDNA X DNA で検索
Mega BLAST : 長大な配列上のほぼ同一な配列を高速に検索。
  ほぼ完全一致する短い配列の探索。DNA X DNA
blastp : 通常のProtein X Protein で検索
PSI-BLAST/PHI-BLAST : 弱い類似しかないアミノ酸配列間の高度な検索。
  ほぼ完全一致する短い配列の探索。 Protein X Protein
blastx : DNA(query) X Protein(DB) <-- queryを翻訳し検索
tblastn : Protein(query) X DNA(DB) <-- DBを翻訳し検索
tblastx : DNA(query) X DNA(DB) <-- 両方を翻訳し検索

IgBLAST : Immunoglobulin配列の検索
Trace BLAST : 長大かつ類似の低い比較が可能な Mega BLAST

以上

0 件のコメント:

コメントを投稿