- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
这是我第一次在 biopython 中使用 blast,我遇到了问题。
我使用包含 20 个序列的 fasta 文件创建了一个自定义 blast 数据库:
os.system('makeblastdb -in newtest.fasta -dbtype nucl -out newtest.db')
这确实在我当前工作的当前目录中生成了几个文件(newtest.db.nhr、newtest.db.nin、newtest.db.nsq):(/home/User/Documents/python/fasta 文件
)
现在我正在尝试使用以下方法在 biopython 中查询此数据库:
blastx_cline = NcbiblastxCommandline(query="queryfile.fas", db="newtest.db", evalue=0.00000001, outfmt=5, out="opuntia.xml")
但是我收到了这个错误:
> Bio.Application.ApplicationError: Command 'blastx -out opuntia.xml
> -outfmt 5 -query queryfile.fas -db newtest.db -evalue 1e-08' returned non-zero exit status 2, 'BLAST Database error: No alias or
> index file found for protein database [newtest.db] in search path
> [/home/User/Documents/python/fasta-files:/usr/share/ncbi/blastdb:]'
所以我尝试将从 /home/User/Documents/python/fasta-files
生成的文件复制到 /usr/share/ncbi/blastdb
但它说我没有权限。
*编辑*
当我使用:os.system("blastn -db newtest.db -query "fastafile.fas"+ "-out test.txt")
它正常工作生成一个输出文件。但反之则不然**
所以我被困在这里,我不知道如何解决这个问题。
任何帮助将不胜感激
最佳答案
注意报错信息中的protein database这句,newtest.db是nucl数据库。
在搜索路径中找到蛋白质数据库 [newtest.db] 的索引文件
所以 blastx 需要一个蛋白质数据库。这不是很明显吗? :-)
如果您不是故意这样做的,您应该通过添加“cmd='blastn'”来指定要使用的 BLAST 程序。所以,这样更好:
blastx_cline = NcbiblastxCommandline(cmd='blastn', query="queryfile.fas", db="newtest.db", evalue=0.00000001, outfmt=5, out="opuntia.xml")
关于python - 使用 NcbiblastxCommandline 自定义 blast 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13584878/
这是我第一次在 biopython 中使用 blast,我遇到了问题。 我使用包含 20 个序列的 fasta 文件创建了一个自定义 blast 数据库: os.system('makeblastdb
我是一名优秀的程序员,十分优秀!