使用Blast本地数据库获得PSSM特征矩阵

1.下载数据db文件

这次主要用到2中类型的蛋白质数据nr和nt,下载地址:ftp://ftp.ncbi.nlm.nih.gov/blast/db,由于nr和nt比较大,建议使用迅雷下载分割的小文件(nr64个,nt45个),如nr.00.tar.gz

2.解压所有的.gz文件

可以使用通配符解压(不知为何中途出错),

tar -xzvf *.gz

也可以使用脚本命令解压,下面给出python的解压代码

import os
for i in range(0,65):
    os.system("tar -xzvf nr.%02d.tar.gz"%i)

3.使用命令获得PSSM特征矩阵

psiblast -query /home/javis/data_base/1a2yC  -db /home/javis/data_base/nr/nr  -num_iterations 3  -out test1  -out_ascii_pssm test1.pssm 
-query 是待匹配的fasta文件

-db 是之前解压的数据文件目录,这里注意所有的nr文件都是放在/home/javis/data_base/nr/下,但是-db 的后面必须再追加nr(nr为下载的数据库前缀),否则会出现如下错误

BLAST Database error: No alias or index file found for protein database [/home/javis/data_base/nr2] in search path [/home/javis/data_base/nt::]
-num_iterations 3  迭代次数为3次

 -out test1   输出文件

-out_ascii_pssm test1.pssm  矩阵输出文件

最后注意,下载的文件最好和服务器提供的md5码比对下,如果其中一个文件损坏,会导致C++异常

BLAST Database error: CSeqDBAtlas::MapMmap: While mapping file [/home/javis/data_base/nr/nr.33.psq] with 13124431561 bytes allocated, caught exception:
NCBI C++ Exception:
    "/build/buildd/ncbi-blast+-2.2.28/c++/src/objtools/blast/seqdb_reader/seqdbatlas.cpp", line 152: Error: ncbi::SeqDB_ThrowException() - Validation failed: [end <= file_size] at /build/buildd/ncbi-blast+-2.2.28/c++/src/objtools/blast/seqdb_reader/seqdbatlas.cpp:506


  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值