BLAST+7格式 (skbio.io.format.blast7
)¶
BLAST+7格式 (blast+7
)存储爆炸的结果 [1] 数据库搜索。此格式由BLAST+output格式7和遗留BLAST输出格式9生成。结果以带标题的简单表格格式存储。值由制表符分隔。
比较两个核苷酸序列的BLAST+7格式文件示例 [2] (制表符由 <tab>
):
# BLASTN 2.2.18+
# Query: gi|1786181|gb|AE000111.1|AE000111
# Subject: ecoli
# Fields: query acc., subject acc., evalue, q. start, q. end, s. start, s. end
# 5 hits found
AE000111<tab>AE000111<tab>0.0<tab>1<tab>10596<tab>1<tab>10596
AE000111<tab>AE000174<tab>8e-30<tab>5565<tab>5671<tab>6928<tab>6821
AE000111<tab>AE000394<tab>1e-27<tab>5587<tab>5671<tab>135<tab>219
AE000111<tab>AE000425<tab>6e-26<tab>5587<tab>5671<tab>8552<tab>8468
AE000111<tab>AE000171<tab>3e-24<tab>5587<tab>5671<tab>2214<tab>2130
格式支持¶
有嗅探员:是的
状态:从0.4.1开始试验。
读者 |
writer |
对象类 |
---|---|---|
是的 |
不 |
|
格式规范¶
scikit-bio支持两种BLAST+7文件格式:BLAST+output format 7 (-outfmt 7
)和旧的BLAST输出格式9 (-m 9
). 这两种文件格式在结构上相似,只是略有不同。
示例BLAST+输出格式7文件:
# BLASTP 2.2.31+
# Query: query1
# Subject: subject2
# Fields: q. start, q. end, s. start, s. end, identical, mismatches, sbjctframe, query acc.ver, subject acc.ver
# 2 hits found
1 8 3 10 8 0 1 query1 subject2
2 5 2 15 8 0 2 query1 subject2
备注
没有命中的数据库搜索可能以BLAST+output格式7文件出现。scikit-bio忽略了这些“空”记录:
# BLASTP 2.2.31+
# Query: query1
# Subject: subject1
# 0 hits found
旧版爆炸输出格式9文件示例:
# BLASTN 2.2.3 [May-13-2002]
# Database: other_vertebrate
# Query: AF178033
# Fields:
Query id,Subject id,% identity,alignment length,mismatches,gap openings,q. start,q. end,s. start,s. end,e-value,bit score
AF178033 EMORG:AF178033 100.00 811 0 0 1 811 1 811 0.0 1566.6
AF178033 EMORG:AF031394 99.63 811 3 0 1 811 99 909 0.0 1542.8
备注
scikit-bio要求文件中的字段保持一致。
爆破柱类型¶
以下列类型由BLAST输出并由scikit-bio支持。有关这些列类型的详细信息,请参见 skbio.io.format.blast6
.
字段名 |
数据帧列名 |
---|---|
查询id |
质量标准 |
查询gi |
qgi公司 |
查询科目。 |
卡塔尔航空公司 |
查询acc.版本 |
qaccver公司 |
查询长度 |
昆仑 |
主题id |
sseqid公司 |
主题ID |
萨尔塞奇德 |
受试者gi |
sgi公司 |
专题地理信息系统 |
萨尔吉 |
科目科目。 |
sacc公司 |
主题acc.版本 |
萨克维尔 |
科目科目 |
萨拉克 |
主题长度 |
斯伦 |
问。开始 |
Q开始 |
问。结束 |
Q结束 |
s。开始 |
开始 |
s。结束 |
发送 |
查询序列 |
qseq公司 |
主题序列 |
sseq公司 |
安勤 |
安勤 |
比特分数 |
比特分数 |
分数 |
分数 |
定线长度 |
长度 |
%身份 |
皮登特 |
完全相同的 |
奈登特 |
不匹配 |
不匹配 |
积极的 |
积极的 |
间隙打开 |
加波彭 |
差距 |
差距 |
%积极的 |
酚醛树脂 |
查询/sbjct帧 |
框架 |
查询框架 |
Q框架 |
sbjct框架 |
S帧 |
BTOP |
btop公司 |
科目税号 |
葡萄球菌 |
主题sci名称 |
sscinames |
使用者com名称 |
头颈 |
主题爆炸名称 |
S姓氏 |
主题超级王国 |
S王国 |
题目 |
针线 |
主题串 |
sstrand公司 |
主题名称 |
萨尔蒂尔斯 |
%每个主题的查询覆盖率 |
qcovs公司 |
%每个hsp的查询覆盖率 |
qcovhsp公司 |
示例
假设我们有一个BLAST+7文件:
>>> from io import StringIO
>>> import skbio.io
>>> import pandas as pd
>>> fs = '\n'.join([
... '# BLASTN 2.2.18+',
... '# Query: gi|1786181|gb|AE000111.1|AE000111',
... '# Database: ecoli',
... '# Fields: query acc., subject acc., evalue, q. start, q. end, s. start, s. end',
... '# 5 hits found',
... 'AE000111\tAE000111\t0.0\t1\t10596\t1\t10596',
... 'AE000111\tAE000174\t8e-30\t5565\t5671\t6928\t6821',
... 'AE000111\tAE000171\t3e-24\t5587\t5671\t2214\t2130',
... 'AE000111\tAE000425\t6e-26\t5587\t5671\t8552\t8468'
... ])
>>> fh = StringIO(fs)
将文件读入 pd.DataFrame
:
>>> df = skbio.io.read(fh, into=pd.DataFrame)
>>> df
qacc sacc evalue qstart qend sstart send
0 AE000111 AE000111 0.000000e+00 1.0 10596.0 1.0 10596.0
1 AE000111 AE000174 8.000000e-30 5565.0 5671.0 6928.0 6821.0
2 AE000111 AE000171 3.000000e-24 5587.0 5671.0 2214.0 2130.0
3 AE000111 AE000425 6.000000e-26 5587.0 5671.0 8552.0 8468.0
假设我们有一个旧的BLAST 9文件:
>>> from io import StringIO
>>> import skbio.io
>>> import pandas as pd
>>> fs = '\n'.join([
... '# BLASTN 2.2.3 [May-13-2002]',
... '# Database: other_vertebrate',
... '# Query: AF178033',
... '# Fields: ',
... 'Query id,Subject id,% identity,alignment length,mismatches,gap openings,q. start,q. end,s. start,s. end,e-value,bit score',
... 'AF178033\tEMORG:AF178033\t100.00\t811\t0\t0\t1\t811\t1\t811\t0.0\t1566.6',
... 'AF178033\tEMORG:AF178032\t94.57\t811\t44\t0\t1\t811\t1\t811\t0.0\t1217.7',
... 'AF178033\tEMORG:AF178031\t94.82\t811\t42\t0\t1\t811\t1\t811\t0.0\t1233.5'
... ])
>>> fh = StringIO(fs)
将文件读入 pd.DataFrame
:
>>> df = skbio.io.read(fh, into=pd.DataFrame)
>>> df[['qseqid', 'sseqid', 'pident']]
qseqid sseqid pident
0 AF178033 EMORG:AF178033 100.00
1 AF178033 EMORG:AF178032 94.57
2 AF178033 EMORG:AF178031 94.82
引用