QSeq格式 (skbio.io.format.qseq )¶

QSeq格式 (qseq )是一些DNA测序器产生的基于记录的纯文本输出格式,用于存储生物序列数据、质量分数、每个序列的过滤信息和运行特定的元数据。

格式支持¶

有嗅探员:是的

读者

writer

对象类

是的

发电机 skbio.sequence.Sequence 物体

是的

skbio.sequence.Sequence

是的

skbio.sequence.DNA

是的

skbio.sequence.RNA

是的

skbio.sequence.Protein

格式规范¶

QSeq文件由单行记录组成,用制表符分隔。记录中有11个字段:

机器名称

运行编号

车道号(正整数)

图块编号(正整数)

X坐标(整数)

Y坐标(整数)

索引

读取编号(1-3)

序列数据(通常为IUPAC字符)

质量分数(编码为可打印ASCII的质量分数)

过滤器布尔值(如果序列通过了CASAVA的过滤器,则为1,否则为0)

更多详情请参考CASAVA文档 [1].

备注

当sciqseq是一个对象时 metadata 属性将自动填充与上述名称相对应的数据。

备注

lowercase 读取QSeq文件时支持该功能。有关详细信息,请参阅特定的对象构造函数文档。

备注

scikit-bio允许删除过滤器字段,但不清楚这是否是原始格式规范的一部分。

格式参数¶

以下参数与FASTQ格式中的参数相同 (skbio.io.format.fastq ):

variant 见 variant FASTQ格式的参数

phred_offset 见 phred_offset FASTQ格式的参数

以下附加参数与FASTA格式中的参数相同 (skbio.io.format.fasta ):

constructor 见 constructor FASTA格式的参数

seq_num 见 seq_num FASTA格式的参数

仅发电机¶

filter 如果 True ,排除未通过筛选的序列(即过滤器字段为0)。默认为 True .

示例

假设我们有以下QSeq文件:

illumina 1 3 34 -30 30 0 1 ACG....ACGTAC ruBBBBrBCEFGH 1

illumina 1 3 34 30 -30 0 1 CGGGCATTGCA CGGGCasdGCA 0

illumina 1 3 35 -30 30 0 2 ACGTA.AATAAAC geTaAafhwqAAf 1

illumina 1 3 35 30 -30 0 3 CATTTAGGA.TGCA tjflkAFnkKghvM 0

让我们将内存中的这个文件定义为 StringIO ,但这可能是一个真正的文件路径、文件句柄或scikit bio的I/O注册表实际支持的任何内容:

>>> from io import StringIO

>>> fs = '\n'.join([

... 'illumina\t1\t3\t34\t-30\t30\t0\t1\tACG....ACGTAC\truBBBBrBCEFGH\t1',

... 'illumina\t1\t3\t34\t30\t-30\t0\t1\tCGGGCATTGCA\tCGGGCasdGCA\t0',

... 'illumina\t1\t3\t35\t-30\t30\t0\t2\tACGTA.AATAAAC\tgeTaAafhwqAAf\t1',

... 'illumina\t1\t3\t35\t30\t-30\t0\t3\tCATTTAGGA.TGCA\ttjflkAFnkKghvM\t0'

... ])

>>> fh = StringIO(fs)

要使用生成器读取器迭代序列,请运行:

>>> import skbio.io

>>> for seq in skbio.io.read(fh, format='qseq', variant='illumina1.3'):

... seq

... print('')

Sequence

--------------------------------------

Metadata:

'id': 'illumina_1:3:34:-30:30#0/1'

'index': 0

'lane_number': 3

'machine_name': 'illumina'

'read_number': 1

'run_number': 1

'tile_number': 34

'x': -30

'y': 30

Positional metadata:

'quality':

Stats:

length: 13

--------------------------------------

0 ACG....ACG TAC

Sequence

--------------------------------------

Metadata:

'id': 'illumina_1:3:35:-30:30#0/2'

'index': 0

'lane_number': 3

'machine_name': 'illumina'

'read_number': 2

'run_number': 1

'tile_number': 35

'x': -30

'y': 30

Positional metadata:

'quality':

Stats:

length: 13

--------------------------------------

0 ACGTA.AATA AAC

注意,只有两个序列被加载,因为QSeq读取器过滤掉过滤字段为0的序列(除非 filter=False 提供)。

引用

[1]

http://biowulf.nih.gov/apps/CASAVA_UG_15011196B.pdf