本地blast的使用及SRA轉fastq,解決sra轉換成fastq後bwa無法識別的問題

XH生信ML筆記發表於2019-11-04

BLAST instaliiation

直接下載編譯好的balst,加入 PATH

匯入PATH,使其在任何terminal中均可使用

export PATH=$PATH:your directory/ncbi-blast-2.9.0+/bin

cd ~
vim ~/.bash_profile
source ~/.bash_profile

使用命令

建立資料庫

makeblastdb -in SRR5799563.fasta -out SRR9563db -parse_seqids -dbtype nucl
makeblastdb -in all.contig -out kpn_contigdb -dbtype nucl 

進行blast

引數

  • -query:輸入序列名稱
  • -out:輸出結果名稱
  • -outfmt:以格式6輸出結果,後面自定義輸出的條目
  • -max_target_seqs:每條序列最多匹配多少個結果
  • -num_thread:用多少執行緒
blastn -db ./database/SRR9563db -query hrpt.fa -out hrpt.blastt -outfmt 6 -max_target_seqs 1000000 -num_threads 15

blastn -db kpn_contigdb -query kpc2.fa -out kpc2.blast -evalue 0.01 -num_threads 15 -outfmt "6 qsedid qacc sseqid sacc evalue qstart qend sstart send length pident qcovhsp"

NCBI SRAtools

  • 下載和解壓工具
wget ftp://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/current/sratoolkit.current-centos_linux64.tar.gz
tar -xzf sratoolkit.current-centos_linux64.tar.gz 
cd sratoolkit.2.9.6-centos_linux64/
cd bin
  • 下載sra檔案並生成fastq reads檔案

引數

  • -split-files:把pair-end測序分成兩個檔案輸出
  • -I :列印read 1和2 的字尾(Produces two fastq files (–split-files) containing “.1” and “.2” read suffices (-I) for paired-end data.)
  • -fasta 只輸出fasta格式
./prefetch -p 1 SRR5799563 # 下載sra檔案
~/sratoolkit.2.9.6-centos_linux64/bin/fastq-dump -I --split-files SRR390728 #

 ~/sratoolkit.2.9.6-centos_linux64/bin/fastq-dump --fasta  SRR5799563.sra

SRA fastq 編輯用於 BWA MEM 比對

sra 生成的read1和reads2字尾可能bwa不能識別,需要修改序列名字

awk 'BEGIN{OFS=FS="."}{if (FNR%4==1) print $1":"$2; else print $0}' s1test4k_1.fq >s1_awk_1.fq

awk ‘BEGIN{OFS=FS="."}{if (FNR%4==1) print $1":"$2; else print $0}' SRR6037659_2.fastq>../mapping/s1/s1_awk_2.fq

相關文章