try:
from pydna.readers import read
from pydna.parsers import parse_primers
from pydna.dseqrecord import Dseqrecord
from pydna.genbank import Genbank
from pydna.amplify import pcr
from pydna.assembly import Assembly
except ImportError:
import sys, os
sys.path.append(os.pardir)
from pydna.readers import read
from pydna.parsers import parse_primers
from pydna.dseqrecord import Dseqrecord
from pydna.genbank import Genbank
from pydna.amplify import pcr
from pydna.assembly import Assembly
ldsr = Dseqrecord("aaa")
type(ldsr)
pydna.dseqrecord.Dseqrecord
ldsr
Dseqrecord(-3)
[ldsr, ldsr]
[Dseqrecord(-3), Dseqrecord(-3)]
cdsr = Dseqrecord("aaa", circular=True)
type(cdsr)
pydna.dseqrecord.Dseqrecord
cdsr
Dseqrecord(o3)
[cdsr, cdsr]
[Dseqrecord(o3), Dseqrecord(o3)]
cdsr.reverse_complement()
Dseqrecord(o3)
[cdsr.reverse_complement(), cdsr.reverse_complement()]
[Dseqrecord(o3), Dseqrecord(o3)]
fromstring = read(">string\naaaa")
type(fromstring)
pydna.dseqrecord.Dseqrecord
fromstring
Dseqrecord(-4)
[fromstring, fromstring]
[Dseqrecord(-4), Dseqrecord(-4)]
[fromstring.reverse_complement(), fromstring.reverse_complement()]
[Dseqrecord(-4), Dseqrecord(-4)]
from pydna.genbankrecord import GenbankRecord
# The GenbankRecord is not meant to be used directly
gbr = GenbankRecord("aaa", item="AccessionNumber", start=1, stop=3, circular=True)
type(gbr)
pydna.genbankrecord.GenbankRecord
# This link is dead as expected
gbr
gbr.hyperlink
<a href='https://www.ncbi.nlm.nih.gov/nuccore/AccessionNumber?from=1&to=3&strand=1' target='_blank'>AccessionNumber 1-3</a>
gbr.reverse_complement()
gbr.reverse_complement().hyperlink
<a href='https://www.ncbi.nlm.nih.gov/nuccore/AccessionNumber?from=1&to=3&strand=2' target='_blank'>AccessionNumber 1-3</a>
gbr.reverse_complement().reverse_complement().hyperlink
<a href='https://www.ncbi.nlm.nih.gov/nuccore/AccessionNumber?from=1&to=3&strand=1' target='_blank'>AccessionNumber 1-3</a>
gb = Genbank("bjornjobb@gmail.com")
gbr2 = gb.nucleotide("E05006")
type(gbr2)
pydna.genbankrecord.GenbankRecord
gbr2
gbr2.reverse_complement()
gbr3 = gb.nucleotide("E05006 REGION: 5..15")
type(gbr3)
pydna.genbankrecord.GenbankRecord
gbr4 = gb.nucleotide("E05006 REGION: complement(5..15)")
type(gbr4)
pydna.genbankrecord.GenbankRecord
gbr4
gbr4.reverse_complement()
from pydna.genbankfile import GenbankFile
gbf = GenbankFile("aaa")
type(gbf)
pydna.genbankfile.GenbankFile
# The GenbankFile is not supposed to be used directly
# The link below is dead as expected
gbf
gbf1 = read("sequence.gb")
type(gbf1)
pydna.genbankfile.GenbankFile
gbf1
gbf1.reverse_complement()
gbf2 = read("subfolder/sequence.gb")
type(gbf2)
pydna.genbankfile.GenbankFile
gbf2
gbf2.reverse_complement()
from pydna.amplicon import Amplicon
# The Amplicon class is not meant to be used directly, but it is possible
amp = Amplicon("aaa")
type(amp)
pydna.amplicon.Amplicon
amp
primers = parse_primers(
'''
>ForwardPrimer
gctactacacacgtactgactg
>ReversePrimer
tgtggttactgactctatcttg '''
)
temp = Dseqrecord("gctactacacacgtactgactg" + "gatc" * 239 + "caagatagagtcagtaaccaca")
prd = pcr(primers, temp)
type(prd)
pydna.amplicon.Amplicon
prd.figure()
5gctactacacacgtactgactg...caagatagagtcagtaaccaca3 |||||||||||||||||||||| 3gttctatctcagtcattggtgt5 5gctactacacacgtactgactg3 |||||||||||||||||||||| 3cgatgatgtgtgcatgactgac...gttctatctcagtcattggtgt5
prd.program()
|95°C|95°C | |tmf:62.4 |____|_____ 72°C|72°C|tmr:59.1 |3min|30s \ 58.6°C _____|____|45s/kb | | \______/ 0:45|5min|GC 49% | | 30s | |1000bp
(prd, prd)
(Amplicon(1000), Amplicon(1000))
prd.reverse_complement()
(prd.reverse_complement(), prd.reverse_complement())
(Amplicon(1000), Amplicon(1000))
prd.reverse_complement().figure()
5tgtggttactgactctatcttg...cagtcagtacgtgtgtagtagc3 |||||||||||||||||||||| 3gtcagtcatgcacacatcatcg5 5tgtggttactgactctatcttg3 |||||||||||||||||||||| 3acaccaatgactgagatagaac...gtcagtcatgcacacatcatcg5
prd.reverse_complement().program()
|95°C|95°C | |tmf:59.1 |____|_____ 72°C|72°C|tmr:62.4 |3min|30s \ 58.6°C _____|____|45s/kb | | \______/ 0:45|5min|GC 49% | | 30s | |1000bp
from pydna.contig import Contig
# Contig is not meant to be used directly, but it is possible
cnt = Contig("aaa")
type(cnt)
pydna.contig.Contig
a = Dseqrecord("acgatgctatactaagCCCCtgtgctgtgctct", name="SequenceA")
b = Dseqrecord("tgtgctgtgctctTTTTTTTtattctggctgtat", name="SequenceB")
c = Dseqrecord("tattctggctgtatGGGGGtacgatgctatactaa", name="SequenceC")
x = Assembly((a, b, c), limit=13)
x
Assembly fragments..: 33bp 34bp 35bp limit(bp)..: 13 G.nodes....: 6 algorithm..: common_sub_strings
type(x)
pydna.assembly.Assembly
cnt = x.assemble_circular()[0]
type(cnt)
pydna.contig.Contig
cnt
-|SequenceA|13 | \/ | /\ | 13|SequenceB|14 | \/ | /\ | 14|SequenceC|15 | \/ | /\ | 15- | | -----------------------------------------
cnt.detailed_figure()
||||||||||||||| acgatgctatactaagCCCCtgtgctgtgctct TGTGCTGTGCTCT tgtgctgtgctctTTTTTTTtattctggctgtat TATTCTGGCTGTAT tattctggctgtatGGGGGtacgatgctatactaa ACGATGCTATACTAA
cnt.reverse_complement()
-|SequenceC_rc|14 | \/ | /\ | 14|SequenceB_rc|13 | \/ | /\ | 13|SequenceA_rc|15 | \/ | /\ | 15- | | --------------------------------------------------
cnt.reverse_complement().detailed_figure()
||||||||||||||| ttagtatagcatcgtaCCCCCatacagccagaata ATACAGCCAGAATA atacagccagaataAAAAAAAagagcacagcaca AGAGCACAGCACA agagcacagcacaGGGGcttagtatagcatcgt TTAGTATAGCATCGT