skbio.sequence.GrammaredSequence.replace¶
- GrammaredSequence.replace(where, character)[源代码]¶
将此序列中的值替换为其他字符。
状态:从0.5.0开始实验。
- 参数:
where (1D array_like (bool) or iterable (slices or ints) or str) -- 指示要替换的序列中的位置 character . 可以是布尔向量、索引/切片的iterable或是 positional_metadata 指向布尔向量。
character (str or bytes) -- 将替换此序列中选定项的字符。
- 返回:
此序列的副本,所选项目替换为所选字符。保留所有元数据。
- 返回类型:
示例
让我们创建并显示一个序列:
>>> from skbio import Sequence >>> sequence = Sequence('GGTACCAACG') >>> str(sequence) 'GGTACCAACG'
我们打电话吧
replace
关于使用布尔向量的序列where
并将其赋给一个新变量:>>> seq = sequence.replace([False, False, False, True, False, False, ... True, True, False, False], '-')
让我们看看新的序列:
>>> str(seq) 'GGT-CC--CG'
其他类型的输入被
where
参数。让我们传入一个索引和切片列表,该列表与前面使用的布尔向量等效:>>> str(seq) == str(sequence.replace([3, slice(6, 8)], '-')) True
where
也接受包含在Sequence.positional_metadata
:>>> sequence.positional_metadata = {'where': ... [False, False, False, True, False, ... False, True, True, False, False]}
让我们把钥匙递进去
'where'
与之相比seq
:>>> str(seq) == str(sequence.replace('where', '-')) True