skbio.metadata.Interval

class skbio.metadata.Interval(interval_metadata, bounds, fuzzy=None, metadata=None)[源代码]

存储间隔功能的边界和元数据。

此类存储间隔特性。区间特征被定义为生物序列或序列比对的一个子区域,它是一个功能实体,例如一个基因、一个核糖开关、一个外显子等。它可以跨越单个相邻区域或多个非相邻区域(例如,转录本中的多个外显子,或操纵子中的多个基因)。

参数:
  • interval_metadata (object) -- 参考 IntervalMetadata 反对这个 Interval 对象与关联。

  • bounds (iterable of tuple of int) -- 表示起始坐标和结束坐标的元组。它是 zero-based 编号。在起始边界上总是包含的,在结束边界上总是排他的。

  • fuzzy (iterable of tuple of bool, optional) -- 元组表示每个绑定坐标的模糊性。如果未指定,则所有绑定坐标的模糊性 False . 如果坐标模糊性 True 这表明区间特征的确切界点是未知的。边界可以在指定坐标之外的某些点开始或结束。这适应了位置格式 [1] INSDC的。

  • metadata (dict, optional) -- 存储特征信息的属性字典,如“链”、“基因名”或“产品”。

备注

当一个 Interval 对象自动将自身添加到其关联的 IntervalMetadata 对象, IntervalMetadata.add 是创建和添加到 IntervalMetadata .

引用

示例

假设我们有一个叫做“genA”的基因,有10nt,如下图所示。第二行表示该基因上的两个外显子(用“=”表示):

TGGATTCTGC
-====--==-
0123456789

我们可以创造一个 Interval 目的表达该基因的外显子:

>>> from skbio.metadata import Interval, IntervalMetadata
>>> interval_metadata = IntervalMetadata(10)

请记住,坐标在下界是包含的,在上界是排他的:

>>> gene = Interval(interval_metadata,
...                 bounds=[(1, 5), (7, 9)],
...                 metadata={'name': 'genA'})
>>> gene    
Interval(interval_metadata=..., bounds=[(1, 5), (7, 9)], fuzzy=[(False, False), (False, False)], metadata={'name': 'genA'})

属性

bounds 

间隔特征的坐标。

dropped 

布尔值,指示 Interval 对象被丢弃。

fuzzy 

每个坐标的开放性。

metadata 

间隔功能的元数据。

内嵌函数

__eq__ (其他)

测试是否 Interval 对象与另一对象相等。

__ge__(value, /)

返回self>=值。

__getstate__ \()

泡菜的帮手。

__gt__(value, /)

返回self>值。

__le__(value, /)

返回self<=value。

__lt__(value, /)

返回self<value。

__ne__ (其他)

测试是否 Interval 对象不等于另一个对象。

__str__ \()

返回str(self)。

方法

drop \()

把这个扔掉 Interval 对象从它链接到的间隔元数据返回。