restrict - Split nucleotide sequence at restriction site

Syntax

Fragments = restrict(SeqNT, Enzyme)
Fragments = restrict(SeqNT, Pattern, Position)
[Fragments, CuttingSites] = restrict(...)
[Fragments, CuttingSites, Lengths] = restrict(...)

... = restrict(..., 'PartialDigest', PartialDigestValue)

Arguments

SeqNT

Nucleotide sequence. Enter either a character string with the characters A, C, G, T, and ambiguous characters R, Y, K, M, S, W, B, D, H, V, N, or a vector of integers. You can also enter a structure with the field Sequence.

Enzyme

Enter the name of a restriction enzyme from REBASE, the Restriction Enzyme Database.

Pattern

Enter a short nucleotide pattern. Pattern can be a regular expression.

Position

Defines the position on Pattern where the sequence is cut. Position=0 corresponds to the 5' end of Pattern.

PartialDigestValue

Property to specify a probability for partial digestion. Enter a value from 0 to 1.

Description

Fragments = restrict(SeqNT, Enzyme) cuts SeqNT, a nucleotide sequence, into fragments at the restriction sites of Enzyme, a restriction enzyme. The return values are stored in Fragments, a cell array of sequences.

Fragments = restrict(SeqNT, Pattern, Position) cuts SeqNT, a nucleotide sequence into fragments at restriction sites specified by Pattern, a nucleotide pattern.

[Fragments, CuttingSites] = restrict(...) returns a numeric vector with the indices representing the cutting sites. A 0 (zero) is added to the list so numel(Fragments)==numel(CuttingSites). You can use CuttingSites+1 to point to the first base of every fragment respective to the original sequence.

[Fragments, CuttingSites, Lengths] = restrict(...) returns a numeric vector with the lengths of every fragment.


... = restrict(..., 'PartialDigest', PartialDigestValue)
simulates a partial digest where each restriction site in the sequence has a PartialDigestValue or probability of being cut.

REBASE, the restriction enzyme database, is a collection of information about restriction enzymes and related proteins. For more information about REBASE or to search REBASE for the name of a restriction enzyme, see:

http://rebase.neb.com/rebase/rebase.html

Examples

  1. Enter a nucleotide sequence.

    Seq = 'AGAGGGGTACGCGCTCTGAAAAGCGGGAACCTCGTGGCGCTTTATTAA';
  2. Use the recognition pattern (sequence) GCGC with the point of cleavage at position 3 to cleave a nucleotide sequence.

    fragmentsPattern = restrict(Seq,'GCGC',3)
    
    fragmentsPattern = 
        'AGAGGGGTACGCG'
        'CTCTGAAAAGCGGGAACCTCGTGGCG'
        'CTTTATTAA'
  3. Use the restriction enzyme HspAI (recognition sequence GCGC with the point of cleavage at position 1) to cleave a nucleotide sequence.

    fragmentsEnzyme = restrict(Seq,'HspAI')
    
    fragmentsEnzyme = 
        'AGAGGGGTACG'
        'CGCTCTGAAAAGCGGGAACCTCGTGG'
        'CGCTTTATTAA'
  4. Use a regular expression for the enzyme pattern.

    fragmentsRegExp = restrict(Seq,'GCG[^C]',3)
    
    fragmentsRegExp = 
    
        'AGAGGGGTACGCGCTCTGAAAAGCG'
        'GGAACCTCGTGGCGCTTTATTAA'
  5. Capture the cutting sites and fragment lengths with the fragments.

    [fragments, cut_sites, lengths] = restrict(Seq,'HspAI')
    
    fragments = 
        'AGAGGGGTACG'
        'CGCTCTGAAAAGCGGGAACCTCGTGG'
        'CGCTTTATTAA'
    
    cut_sites =
         0
        11
        37
    
    lengths =
        11
        26
        11

See Also

Bioinformatics Toolbox™ functions: cleave, rebasecuts, seq2regexp, seqshowwords

MATLAB® function: regexp

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS