restrict
Split nucleotide sequence at restriction site
Syntax
Fragments = restrict(SeqNT, Enzyme)
Fragments = restrict(SeqNT, NTPattern, Position)
[Fragments, CuttingSites]
= restrict(...)
[Fragments, CuttingSites, Lengths]
= restrict(...)
... = restrict(..., 'PartialDigest', PartialDigestValue)
Arguments
SeqNT | One of the following:
|
Enzyme | Character vector or string specifying a name of a restriction enzyme from REBASE®, the Restriction Enzyme Database. Tip Some enzymes specify cutting rules for both a strand and
its complement strand. |
NTPattern | Short nucleotide sequence recognition pattern to search
for in
|
Position | Either of the following:
Note Position |
PartialDigestValue | Value from |
Description
cuts Fragments = restrict(SeqNT, Enzyme)SeqNT,
a nucleotide sequence, into fragments at the restriction sites of Enzyme,
a restriction enzyme. The restrict function stores
the return values in Fragments, a cell
array of sequences.
cuts Fragments = restrict(SeqNT, NTPattern, Position)SeqNT,
a nucleotide sequence, into fragments at restriction sites specified
by NTPattern, a nucleotide recognition
pattern, and Position.
[ returns a numeric vector with the indices
representing the cutting sites. The Fragments, CuttingSites]
= restrict(...)restrict function
adds a 0 to the beginning of the CuttingSites vector
so that the number of elements in CuttingSites equals
the number of elements in Fragments. You
can use to
point to the first base of every fragment respective to the original
sequence.CuttingSites + 1
[ returns a numeric vector with the lengths
of every fragment.Fragments, CuttingSites, Lengths]
= restrict(...)
... = restrict(..., 'PartialDigest', simulates
a partial digest where each restriction site in the sequence has a PartialDigestValue)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:
Examples
Enter a nucleotide sequence.
Seq = 'AGAGGGGTACGCGCTCTGAAAAGCGGGAACCTCGTGGCGCTTTATTAA';Use the restriction enzyme
HspAI(which specifies a recognition sequence ofGCGCand a cleavage position of1) to cleave the nucleotide sequence.fragmentsEnzyme = restrict(Seq,'HspAI')MATLAB returns:
fragmentsEnzyme = 'AGAGGGGTACG' 'CGCTCTGAAAAGCGGGAACCTCGTGG' 'CGCTTTATTAA'
Enter a nucleotide sequence.
Seq = 'AGAGGGGTACGCGCTCTGAAAAGCGGGAACCTCGTGGCGCTTTATTAA';Use the sequence pattern
GCGCwith the point of cleavage at position3to cleave the nucleotide sequence.fragmentsPattern = restrict(Seq,'GCGC',3)MATLAB returns:
fragmentsPattern = 'AGAGGGGTACGCG' 'CTCTGAAAAGCGGGAACCTCGTGGCG' 'CTTTATTAA'
Enter a nucleotide sequence.
Seq = 'AGAGGGGTACGCGCTCTGAAAAGCGGGAACCTCGTGGCGCTTTATTAA';Use a regular expression to specify the sequence pattern.
fragmentsRegExp = restrict(Seq,'GCG[^C]',3)MATLAB returns:
fragmentsRegExp = 'AGAGGGGTACGCGCTCTGAAAAGCG' 'GGAACCTCGTGGCGCTTTATTAA'
Enter a nucleotide sequence.
Seq = 'AGAGGGGTACGCGCTCTGAAAAGCGGGAACCTCGTGGCGCTTTATTAA';Capture the cutting sites and fragment lengths as well as the fragments.
[fragments, cut_sites, lengths] = restrict(Seq,'HspAI')MATLAB returns:
fragments = 'AGAGGGGTACG' 'CGCTCTGAAAAGCGGGAACCTCGTGG' 'CGCTTTATTAA' cut_sites = 0 11 37 lengths = 11 26 11
Some enzymes specify cutting rules for both a strand and its
complement strand. restrict applies the cutting
rule only for the 5' —> 3' strand. You can apply this rule
manually for the complement strand.
Enter a nucleotide sequence.
seq = 'CCCGCNNNNNNN';
Use the
seqcomplementfunction to determine the complement strand, which is in the 3' —> 5' direction.seqc = seqcomplement(seq)
MATLAB returns:
seqc = GGGCGNNNNNNN
Cut the first strand using the restriction enzyme
FauI(which specifies a recognition sequence pattern ofCCCGCand a cleavage position of9).cuts_strand1 = restrict(seq, 'FauI')
MATLAB returns:
cuts_strand1 = 'CCCGCNNNN' 'NNN'Cut the complement strand according the rule specified by
FauI(which specifies a recognition sequence pattern ofGGGCGwith the point of cleavage at position11).cuts_strand2 = restrict(seqc, 'GGGCG', 11)
MATLAB returns:
cuts_strand2 = 'GGGCGNNNNNN' 'N'
References
[1] Roberts, R.J., Vincze, T., Posfai, J., and Macelis, D. (2007). REBASE—enzymes and genes for DNA restriction and modification. Nucl. Acids Res. 35, D269–D270.
[2] Official REBASE Web site: http://rebase.neb.com/rebase/rebase.html.
Version History
Introduced before R2006a
See Also
cleave | cleavelookup | rebasecuts | seq2regexp | seqcomplement | regexp