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 ofGCGC
and 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
GCGC
with the point of cleavage at position3
to 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
seqcomplement
function 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 ofCCCGC
and 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 ofGGGCG
with 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