Fork me on GitHub"

# skbio.sequence.Protein.replace

Protein.replace(where, character)

  Replace values in this sequence with a different character.

  State: Experimental as of 0.5.0.

  Parameters

    - where (1D array_like (bool) or iterable (slices or ints) or str) – Indicates positions in the sequence to replace with character. Can be a boolean vector, an iterable of indices/slices, or a string that is a key in positional_metadata pointing to a boolean vector.

    - character (str or bytes) – Character that will replace chosen items in this sequence.

  Returns

    Copy of this sequence, with chosen items replaced with chosen character. All metadata is retained.

  Return type

    Sequence

  Examples

  Let’s create and display a Sequence:

      >>> from skbio import Sequence
      >>> sequence = Sequence('GGTACCAACG')
      >>> str(sequence)
      'GGTACCAACG'

  Let’s call `replace` on the Sequence using a boolean vector for `where` and assign it to a new variable:

      >>> seq = sequence.replace([False, False, False, True, False, False,
      ...                         True, True, False, False], '-')

  Let’s take a look at the new Sequence:

      >>> str(seq)
      'GGT-CC--CG'

  Other types of input are accepted by the `where` parameter. Let’s pass in a list of indices and slices that is equivalent to the boolean vector we used previously:

      >>> str(seq) == str(sequence.replace([3, slice(6, 8)], '-'))
      True

  `where` also accepts a boolean vector contained in `Sequence.positional_metadata`:

      >>> sequence.positional_metadata = {'where':
      ...                                 [False, False, False, True, False,
      ...                                  False, True, True, False, False]}

  Let’s pass in the key `'where'` and compare to `seq`:

      >>> str(seq) == str(sequence.replace('where', '-'))
      True