skbio.alignment.TabularMSA.iter_positions¶
- TabularMSA.iter_positions(reverse=False, ignore_metadata=False)[源代码]¶
迭代MSA中的位置(列)。
状态:从0.4.1开始试验。
- 参数:
reverse (bool, optional) -- 如果
True
,按相反的顺序迭代位置。ignore_metadata (bool, optional) -- 如果
True
,Sequence.metadata
和Sequence.positional_metadata
不包括在内。如果不需要元数据,这可以显著提高性能。
- 生成器:
序列 --每个位置按它们在MSA中的存储顺序排列。
备注
每一个职位都会 确切地 一
Sequence
对象,与此MSA无关dtype
.Sequence
因为位置是多序列比对的伪影,而不是真正的生物序列。各
Sequence
对象将其对应的MSA位置元数据存储为metadata
除非ignore_metadata
设置为True
.序列将使用外部联接连接其位置元数据,除非
ignore_metadata
设置为True
. 见Sequence.concat(how='outer')
有关详细信息。示例
使用位置元数据创建MSA:
>>> from skbio import DNA, TabularMSA >>> sequences = [DNA('ACG'), ... DNA('A-T')] >>> msa = TabularMSA(sequences, ... positional_metadata={'prob': [3, 1, 2]})
位置迭代:
>>> for position in msa.iter_positions(): ... position ... print() Sequence ------------- Metadata: 'prob': 3 Stats: length: 2 ------------- 0 AA Sequence ------------- Metadata: 'prob': 1 Stats: length: 2 ------------- 0 C- Sequence ------------- Metadata: 'prob': 2 Stats: length: 2 ------------- 0 GT
请注意,MSA位置元数据存储为
metadata
在每一个Sequence
对象。按相反顺序迭代位置:
>>> for position in msa.iter_positions(reverse=True): ... position ... print('') Sequence ------------- Metadata: 'prob': 2 Stats: length: 2 ------------- 0 GT Sequence ------------- Metadata: 'prob': 1 Stats: length: 2 ------------- 0 C- Sequence ------------- Metadata: 'prob': 3 Stats: length: 2 ------------- 0 AA