我目前正在编写一个使用Blast的-outfmt 10选项的库,它为您提供了CSV而不是漂亮的人类可读格式。
喜欢
tblastn -db dmel_a -query somequery.faa -outfmt 10问题是,我想访问db源文件,以便在处理后可以提取一些序列。我知道的唯一方法就是使用remove -outfmt 10并运行两次blast。然后,我解析人类可读的输出,以获得这样的代码行:
Database: Source.fas但是,只有当在makeblastdb中创建数据库时没有指定title时,这才能起作用。无论如何,outfmt 10的stitle似乎是fasta的标题行。我不能只查找数据库名称,然后查找.fna, .fas, .faa,因为您可以将数据库命名为与源文件不同的名称。
有没有其他方法可以从blast数据库名称中提取fasta源文件?我在outfmt选项列表中没有看到。还是我今天失明了?
发布于 2013-06-25 00:28:08
根据Biostar的问题和blasted bioinformatics的博客文章找到了一个有效的解决方案。如果您的fasta不完全遵循NCBI命名,则需要Blast+ 2.2.28。
创建blast数据库时,请使用-parse_seqids标志。然后使用blastdbcmd,您可以提取序列的一个范围
blastdbcmd -db t/blastTest/dmel -range 1-10 -entry some_seq_idhttps://stackoverflow.com/questions/17243505
复制相似问题