Point_Mutagenesis.Rmd
You can find the lastest version of this file at https://github.com/ipb-halle/GoldenMutagenesis/blob/master/vignettes/Point_Mutagenesis.md
ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCG TGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGT GACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCCTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGT GAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTC GAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCCTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCG GCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAGAAGACGATGGGCTGGGAGGCCTCCTCCGAGCGGATGT ACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGT CAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCC CACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGT ACAAGGTCGACAAGCTTGCGGCCGCACTCGAGTGA
library("GoldenMutagenesis")
## Loading required package: seqinr
## Loading required package: stringr
input_sequence<-"ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCCTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCCTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAGAAGACGATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAGGTCGACAAGCTTGCGGCCGCACTCGAGTGA" recognition_site_bbsi<-"GAAGAC" recognition_site_bsai<-"GGTCTC" cuf<-"e_coli_316407.csv"
The domesticate function checks for internal cleavage sites. If corresponding sites are present silent mutations are introduced to destroy the recognition sites. The functions returns a list containing the position of the choosen amino acid residue for silent mutation.
mutations_bbsi<-domesticate(input_sequence, recognition_site_bbsi, cuf) mutations_bbsi
## [[1]]
## [1] "143" "K"
mutations_bsai<-domesticate(input_sequence, recognition_site_bsai, cuf)
## No domestication needed.
mutations_bsai
## list()
The mutate_spm function designs the necessary set of primers for the desired mutations.
The function has the following parameters:
prefix: Additional nucleobases in 5’ position of the recognition site [default: TT]
restriction_enzyme: Recognition site sequence of the respective restriction enzyme [default: GGTCTC]
suffix: Spacer nucleotides matching the cleavage pattern of the enzyme [default: A]
vector: Four basepair overhangs complementary to the created overhangs in the acceptor vector [default: c(“AATG”, “AAGC”)]
replacements: The desired substitutions
binding_min_length: The minimal threshold value of the template binding sequence [default: 4]
binding_max_length: Maximal length of the binding sequence [default: 9]
target_temp: Melting temperature of the binding sequence in °C [default: 60]
cuf: The Codon Usage Table which is being used to select the codon for an exchanged amino acid. [default: e_coli_316407.csv]
fragment_min_size: The minimal size of a generated gene fragment in base pairs [default: 100]
It will return an object of the class primer_set.
mutations<-c(list(c(66, "V")), mutations_bbsi) primers<-mutate_spm(input_sequence, prefix="TT", restriction_enzyme = recognition_site_bbsi, suffix = "AA", vector=c("CTCA", "CTCG"), replacements = mutations, binding_min_length=4 ,binding_max_length = 9, target_temp=60, fragment_min_size = 60, cuf=cuf) primers
## An object of class "Extended_Primerset"
## Slot "fragments":
## [[1]]
## An object of class "Fragment"
## Slot "start":
## [1] 1
##
## Slot "stop":
## [1] 66
##
## Slot "start_mutation":
## logical(0)
##
## Slot "stop_mutation":
## [1] 66
##
##
## [[2]]
## An object of class "Fragment"
## Slot "start":
## [1] 67
##
## Slot "stop":
## [1] 143
##
## Slot "start_mutation":
## logical(0)
##
## Slot "stop_mutation":
## [1] 143
##
##
## [[3]]
## An object of class "Fragment"
## Slot "start":
## [1] 144
##
## Slot "stop":
## [1] 246
##
## Slot "start_mutation":
## logical(0)
##
## Slot "stop_mutation":
## logical(0)
##
##
##
## Slot "oldsequence":
## [1] "ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCCTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCCTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAGAAGACGATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAGGTCGACAAGCTTGCGGCCGCACTCGAGTGA"
##
## Slot "primers":
## [[1]]
## [[1]][[1]]
## An object of class "Primer_SPM"
## Slot "prefix":
## [1] "TT"
##
## Slot "restriction_enzyme":
## [1] "GAAGAC"
##
## Slot "suffix":
## [1] "AA"
##
## Slot "vector":
## [1] "CTCA"
##
## Slot "overhang":
## [1] ""
##
## Slot "extra":
## [1] ""
##
## Slot "binding_sequence":
## [1] "ATGGTGAGCAAGGGCGAGGAGG"
##
## Slot "temperature":
## [1] 60.67248
##
## Slot "difference":
## [1] 0.6724812
##
##
## [[1]][[2]]
## An object of class "Primer_SPM"
## Slot "prefix":
## [1] "TT"
##
## Slot "restriction_enzyme":
## [1] "GAAGAC"
##
## Slot "suffix":
## [1] "TT"
##
## Slot "vector":
## [1] ""
##
## Slot "overhang":
## [1] "CACG"
##
## Slot "extra":
## [1] ""
##
## Slot "binding_sequence":
## [1] "ATGTCCCAGGCGAAGGGCAGGG"
##
## Slot "temperature":
## [1] 61.41454
##
## Slot "difference":
## [1] 0.7420589
##
##
##
## [[2]]
## [[2]][[1]]
## An object of class "Primer_SPM"
## Slot "prefix":
## [1] "TT"
##
## Slot "restriction_enzyme":
## [1] "GAAGAC"
##
## Slot "suffix":
## [1] "AA"
##
## Slot "vector":
## [1] ""
##
## Slot "overhang":
## [1] "CGTG"
##
## Slot "extra":
## [1] ""
##
## Slot "binding_sequence":
## [1] "TCCCCTCAGTTCATGTACGGCTCC"
##
## Slot "temperature":
## [1] 59.45263
##
## Slot "difference":
## [1] 0.5473745
##
##
## [[2]][[2]]
## An object of class "Primer_SPM"
## Slot "prefix":
## [1] "TT"
##
## Slot "restriction_enzyme":
## [1] "GAAGAC"
##
## Slot "suffix":
## [1] "TT"
##
## Slot "vector":
## [1] ""
##
## Slot "overhang":
## [1] "TTTC"
##
## Slot "extra":
## [1] ""
##
## Slot "binding_sequence":
## [1] "TGCATTACGGGGCCGTCGGA"
##
## Slot "temperature":
## [1] 58.9345
##
## Slot "difference":
## [1] 0.5181218
##
##
##
## [[3]]
## [[3]][[1]]
## An object of class "Primer_SPM"
## Slot "prefix":
## [1] "TT"
##
## Slot "restriction_enzyme":
## [1] "GAAGAC"
##
## Slot "suffix":
## [1] "AA"
##
## Slot "vector":
## [1] ""
##
## Slot "overhang":
## [1] "GAAA"
##
## Slot "extra":
## [1] ""
##
## Slot "binding_sequence":
## [1] "AAGACGATGGGCTGGGAGGCC"
##
## Slot "temperature":
## [1] 59.2929
##
## Slot "difference":
## [1] 0.7071014
##
##
## [[3]][[2]]
## An object of class "Primer_SPM"
## Slot "prefix":
## [1] "TT"
##
## Slot "restriction_enzyme":
## [1] "GAAGAC"
##
## Slot "suffix":
## [1] "TT"
##
## Slot "vector":
## [1] "CTCG"
##
## Slot "overhang":
## [1] ""
##
## Slot "extra":
## [1] ""
##
## Slot "binding_sequence":
## [1] "TCACTCGAGTGCGGCCGC"
##
## Slot "temperature":
## [1] 59.15354
##
## Slot "difference":
## [1] 0.1393632
##
##
##
##
## Slot "newsequence":
## [1] "ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCGTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCCTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAAAAGACGATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAGGTCGACAAGCTTGCGGCCGCACTCGAGTGA"
Objects of the classes “primer”, “primer_msd” and “primer_set” can have a slim textual output by using the function print_primer.
print_primer(primers)
## Fragment 1
## Start 1, Stop 66, Length 66
## Forward
## TTGAAGACAACTCAATGGTGAGCAAGGGCGAGGAGG
## Temperature of binding site: 60.67248 °C
## Temperature difference: 0.6724812 K
## Reverse
## TTGAAGACTTCACGATGTCCCAGGCGAAGGGCAGGG
## Temperature of binding site: 61.41454 °C
## Temperature difference: 0.7420589 K
##
## Fragment 2
## Start 67, Stop 143, Length 77
## Forward
## TTGAAGACAACGTGTCCCCTCAGTTCATGTACGGCTCC
## Temperature of binding site: 59.45263 °C
## Temperature difference: 0.5473745 K
## Reverse
## TTGAAGACTTTTTCTGCATTACGGGGCCGTCGGA
## Temperature of binding site: 58.9345 °C
## Temperature difference: 0.5181218 K
##
## Fragment 3
## Start 144, Stop 246, Length 103
## Forward
## TTGAAGACAAGAAAAAGACGATGGGCTGGGAGGCC
## Temperature of binding site: 59.2929 °C
## Temperature difference: 0.7071014 K
## Reverse
## TTGAAGACTTCTCGTCACTCGAGTGCGGCCGC
## Temperature of binding site: 59.15354 °C
## Temperature difference: 0.1393632 K
##
## Input Sequence:
## ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCCTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCCTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAGAAGACGATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAGGTCGACAAGCTTGCGGCCGCACTCGAGTGA
##
## Modified Sequence:
## ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCGTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCCTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAAAAGACGATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAGGTCGACAAGCTTGCGGCCGCACTCGAGTGA
The textual output can be printed into a file.
sink("primers.txt", append=FALSE, split=FALSE) print_primer(primers) sink()