skbio.sequence.Protein

class skbio.sequence.Protein(sequence, metadata=None, positional_metadata=None, interval_metadata=None, lowercase=False, validate=True)[源代码]

存储蛋白质序列数据和可选的相关元数据。

仅限IUPAC蛋白质字符集中的字符 [1] 支持。

参数:
  • sequence (str, Sequence, or 1D np.ndarray (np.uint8 or '|S1')) -- 代表蛋白质序列本身的字符。

  • metadata (dict, optional) -- 应用于整个序列的任意元数据。

  • positional_metadata (Pandas DataFrame consumable, optional) -- 任意每字符元数据。例如,来自排序的高质量数据读取。必须能够直接传递给Pandas数据帧构造函数。

  • interval_metadata (IntervalMetadata) -- 任意间隔元数据,应用于序列中的间隔来存储间隔特征(如蛋白质域)。

  • lowercase (bool or str, optional) -- 如果 True ,小写序列字符将转换为大写字符,以便成为有效的IUPAC蛋白质字符。如果 False ,不会转换任何字符。如果是str,它将被视为对象的位置元数据的键。将转换为大写和小写字符 True 值将存储在键下位置元数据的布尔数组中。

  • validate (bool, optional) -- 如果 True ,将执行验证以确保所有序列字符都在IUPAC蛋白质字符集中。如果 False ,将不执行验证。关闭验证将提高运行时性能。但是,如果存在无效字符,则 不能保证对结果对象执行的操作将按预期工作或行为。 只有在确定序列字符有效时才关闭验证。要存储不符合IUPAC的序列数据,请使用 Sequence .

备注

子类化对于蛋白质是无效的,因为子类化使得改变字母表成为可能,并且某些方法依赖于IUPAC字母表。如果需要自定义序列字母表,则直接从 GrammaredSequence .

引用

示例

>>> from skbio import Protein
>>> Protein('PAW')
Protein
--------------------------
Stats:
    length: 3
    has gaps: False
    has degenerates: False
    has definites: True
    has stops: False
--------------------------
0 PAW

将小写字符转换为大写:

>>> Protein('paW', lowercase=True)
Protein
--------------------------
Stats:
    length: 3
    has gaps: False
    has degenerates: False
    has definites: True
    has stops: False
--------------------------
0 PAW

属性

alphabet 

返回有效字符。

default_gap_char 

在构造新的有间隙序列时要使用的间隙字符。

default_write_format 

definite_chars 

返回确定字符。

degenerate_chars 

返回退化字符。

degenerate_map 

退化到定字符的返回映射。

gap_chars 

返回定义为空白的字符。

interval_metadata 

IntervalMetadata 包含间隔功能信息的对象。

metadata 

dict 包含应用于整个对象的元数据。

nondegenerate_chars 

返回非退化字符。

observed_chars 

序列中观察到的字符集。

positional_metadata 

pd.DataFrame 包含沿轴的元数据。

stop_chars 

返回表示转换停止密码子的字符。

values 

包含基础序列字符的数组。

内嵌函数

__bool__ \()

返回序列的真值(真值)。

__contains__ \(子序列)

确定此序列中是否包含子序列。

__copy__ \()

返回此序列的浅副本。

__deepcopy__ \(备忘录)

返回此序列的深层副本。

__eq__ (其他)

确定这个序列是否等于另一个序列。

__ge__(value, /)

返回self>=值。

__getitem__ \(可编入索引的)

把这个序列切片。

__getstate__ \()

泡菜的帮手。

__gt__(value, /)

返回self>值。

__iter__ \()

在这个序列中迭代位置。

__le__(value, /)

返回self<=value。

__len__ \()

返回此序列中的字符数。

__lt__(value, /)

返回self<value。

__ne__ (其他)

确定这个序列是否与另一个序列不相等。

__reversed__ \()

以相反的顺序重复这个序列中的位置。

__str__ \()

以字符串形式返回序列字符。

方法

concat(sequences[, how])

连接的iterable Sequence 物体。

count(subsequence[, start, end])

计算此序列中子序列的出现次数。

definites \()

查找序列中包含确定字符的位置。

degap \()

返回一个删除了空白字符的新序列。

degenerates \()

查找序列中包含退化字符的位置。

distance(other[, metric])

计算到另一个序列的距离。

expand_degenerates \()

产生序列的所有可能的确定版本。

find_motifs(motif_type[, min_length, ignore])

在生物序列中寻找母题。

find_with_regex(regex[, ignore])

为正则表达式匹配的模式生成切片。

frequencies([chars, relative])

计算序列中字符的频率。

gaps \()

找出生物序列中包含空白的位置。

has_definites \()

确定序列是否包含一个或多个确定字符

has_degenerates \()

确定序列是否包含一个或多个退化字符。

has_gaps \()

确定序列是否包含一个或多个空白字符。

has_interval_metadata \()

确定对象是否具有间隔元数据。

has_metadata \()

确定对象是否具有元数据。

has_nondegenerates \()

确定序列是否包含一个或多个非退化字符

has_positional_metadata \()

确定对象是否具有位置元数据。

has_stops \()

确定序列是否包含一个或多个停止字符。

index(subsequence[, start, end])

找到序列中子序列首先出现的位置。

iter_contiguous(included[, min_length, invert])

生成连续的子序列基于 included .

iter_kmers(k[, overlap])

生成kmers长度 k 从这个序列。

kmer_frequencies(k[, overlap, relative])

返回字长计数 k 从这个序列。

lowercase \(小写)

返回序列的区分大小写的字符串表示形式。

match_frequency(other[, relative])

返回两个序列之间相同的位置计数。

matches (其他)

找到与其他序列匹配的位置。

mismatch_frequency(other[, relative])

返回两个序列之间不同的位置计数。

mismatches (其他)

查找与其他序列不匹配的位置。

nondegenerates \()

查找序列中包含非退化字符的位置。

read(file[, format])

创建新的 Protein 实例。

replace(where, character)

将此序列中的值替换为其他字符。

stops \()

在蛋白质序列中找到包含停止字符的位置。

to_regex([within_capture])

返回说明退化字符的正则表达式对象。

write(file[, format])

写一个实例 Protein 一个文件。