From 8543b7bef86dd410e308ca0290cdccbbe7a3f47d Mon Sep 17 00:00:00 2001 From: Manuel Lera-Ramirez Date: Mon, 7 Oct 2024 11:22:51 +0100 Subject: [PATCH] Updated notebooks (#295) * updated example_restriction (#285) Co-authored-by: Pei-Lun Xie * small fixes (#294) * allow run all on notebooks that have pip install for google colab --------- Co-authored-by: Pei-Lun Xie --- docs/notebooks/CRISPR.ipynb | 12 +- docs/notebooks/Dseq.ipynb | 11 +- docs/notebooks/Dseq_Features.ipynb | 11 +- docs/notebooks/Example_CRISPR.ipynb | 11 +- docs/notebooks/Example_Gibson.ipynb | 11 +- docs/notebooks/Example_Restriction.ipynb | 303 ++++++++----------- docs/notebooks/Gibson.ipynb | 11 +- docs/notebooks/Importing_Seqs.ipynb | 11 +- docs/notebooks/PCR.ipynb | 11 +- docs/notebooks/Restrict_Ligate_Cloning.ipynb | 11 +- 10 files changed, 194 insertions(+), 209 deletions(-) diff --git a/docs/notebooks/CRISPR.ipynb b/docs/notebooks/CRISPR.ipynb index 1cc5ba3e..611f2771 100644 --- a/docs/notebooks/CRISPR.ipynb +++ b/docs/notebooks/CRISPR.ipynb @@ -28,9 +28,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { @@ -54,7 +59,6 @@ "cell_type": "code", "execution_count": null, "metadata": {}, - "outputs": [ { "name": "stdout", diff --git a/docs/notebooks/Dseq.ipynb b/docs/notebooks/Dseq.ipynb index 565bb813..9f3e11e0 100644 --- a/docs/notebooks/Dseq.ipynb +++ b/docs/notebooks/Dseq.ipynb @@ -23,9 +23,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { diff --git a/docs/notebooks/Dseq_Features.ipynb b/docs/notebooks/Dseq_Features.ipynb index cf8a722e..79005c0c 100644 --- a/docs/notebooks/Dseq_Features.ipynb +++ b/docs/notebooks/Dseq_Features.ipynb @@ -30,9 +30,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { diff --git a/docs/notebooks/Example_CRISPR.ipynb b/docs/notebooks/Example_CRISPR.ipynb index 9e0d64e8..c43ad7cb 100644 --- a/docs/notebooks/Example_CRISPR.ipynb +++ b/docs/notebooks/Example_CRISPR.ipynb @@ -75,9 +75,14 @@ "metadata": {}, "outputs": [], "source": [ - "#Install pydna for colab.\n", - "%%capture\n", - "!pip install git+https://github.com/BjornFJohansson/pydna.git@dev_bjorn" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { diff --git a/docs/notebooks/Example_Gibson.ipynb b/docs/notebooks/Example_Gibson.ipynb index ac71e715..beb68f4f 100755 --- a/docs/notebooks/Example_Gibson.ipynb +++ b/docs/notebooks/Example_Gibson.ipynb @@ -27,9 +27,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { diff --git a/docs/notebooks/Example_Restriction.ipynb b/docs/notebooks/Example_Restriction.ipynb index 3dd72dd9..f85adf8c 100755 --- a/docs/notebooks/Example_Restriction.ipynb +++ b/docs/notebooks/Example_Restriction.ipynb @@ -20,7 +20,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "\n", + "\n", " \"Open\n", "" ] @@ -31,9 +31,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { @@ -581,28 +586,31 @@ "name": "stdout", "output_type": "stream", "text": [ - "ACCATGTCGACAAGCCATATCCAACCACCAT\n", - "ATGGCGCGCCGTTTTTTTTTAGGTGTAAATAGTCTTTTAA\n" + "ACCATGTCGACATGCAAACAGTAATGATGGA , Tm: 57.24061148156318\n", + "GGCGCGCCATTAAAAGCCTTCTTCTCCC , Tm: 56.64459495003314\n" ] } ], "source": [ - "# Generating primers for the ase1 insert fragment. \n", + "from pydna.design import primer_design\n", + "#Finding the feature containing the CDS with ase1 as a type qualifier\n", + "gene = next(f for f in pombe_chromosome_I.features if f.type == \"CDS\" and\n", + " \"gene\" in f.qualifiers and\n", + " \"ase1\" in f.qualifiers[\"gene\"])\n", "\n", - "#todo-manu: \n", - "# 1. find the feature containing the CDS filtering the list of features\n", - "# 2. Use the coordinates of the CDS to design primers using pydna design\n", - "# 3. Append the cut site to the primers\n", - "# 4. Do the PCR\n", + "# Using the primer_design function to design primers to amplify the CDS\n", + "# `min` and `max` can be used on a SeqFeature to get the start (leftmost) and end (rightmost) positions\n", + "# this works both on feature with SimpleLocation and CompoundLocation\n", + "amplicon = primer_design(pombe_chromosome_I[min(gene):max(gene)], target_tm=55)\n", "\n", - "fwd_primer_ase1 = Dseqrecord(\"ACCATGTCGAC\") + pombe_chromosome_I[1000:1020] # Adding a SalI cut site\n", - "rvs_primer_ase1_3_start = pombe_chromosome_I[3516:3546] + Dseqrecord(\"GGCGCGCCAT\") # Adding a AscI cut site\n", - "rvs_primer_ase1 = rvs_primer_ase1_3_start.reverse_complement()\n", + "fwd_align, rvs_align = amplicon.primers()\n", + "fwd_primer_ase1 = Dseqrecord(\"ACCATGTCGAC\") + fwd_align # Adding a SalI cut site\n", + "rvs_primer_ase1 = Dseqrecord(\"GGCGCGCCAT\") + rvs_align # Adding a AscI cut site\n", "\n", "# Printing out the primers\n", "\n", - "print(fwd_primer_ase1.seq)\n", - "print(rvs_primer_ase1.seq)" + "print(fwd_primer_ase1.seq, ', Tm: ', tm_default(fwd_align))\n", + "print(rvs_primer_ase1.seq, ', Tm: ', tm_default(rvs_align))" ] }, { @@ -614,35 +622,10 @@ "name": "stdout", "output_type": "stream", "text": [ - "71.72846660888155\n", - "69.94587883755406\n" - ] - } - ], - "source": [ - "# Checking that the primer Tm are matching\n", - "\n", - "#todo-manu: \n", - "# 1. Check the Tm of the primers using the part that aligns with the genome only (here you are calculating the Tm including the restriction sites, which\n", - "# will not anneal to the template during the PCR)\n", - "\n", - "print(tm_default(fwd_primer_ase1.seq)) # Modify the primer sequence above retroactively, if Tm not matching.\n", - "print(tm_default(rvs_primer_ase1.seq))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "LOCUS 2567bp_PCR_prod 2567 bp DNA linear UNK 01-JAN-1980\n", - "DEFINITION pcr_product_description_description_rc.\n", - "ACCESSION 2567bp\n", - "VERSION 2567bp\n", + "LOCUS 2263bp_PCR_prod 2263 bp DNA linear UNK 01-JAN-1980\n", + "DEFINITION pcr_product_description_description.\n", + "ACCESSION 2263bp\n", + "VERSION 2263bp\n", "DBLINK BioProject: PRJNA13836\n", " BioSample: SAMEA3138176\n", "KEYWORDS .\n", @@ -650,13 +633,7 @@ " ORGANISM .\n", " .\n", "FEATURES Location/Qualifiers\n", - " gene 2..2539\n", - " /gene=\"ase1\"\n", - " /locus_tag=\"SPOM_SPAPB1A10.09\"\n", - " 5'UTR 2..174\n", - " /gene=\"ase1\"\n", - " /locus_tag=\"SPOM_SPAPB1A10.09\"\n", - " CDS join(175..598,646..2417)\n", + " CDS join(1..424,472..2243)\n", " /gene=\"ase1\"\n", " /locus_tag=\"SPOM_SPAPB1A10.09\"\n", " /codon_start=1\n", @@ -676,65 +653,57 @@ " QGANGSDSNMSSSPVSGNSNTPFNKFPNSVSRNTHFESKSPHPNYSRTPHETYSKASSK\n", " NVPLSPPKQRVVNEHALNIMSEKLQRTNLKEQTPEMDIENSSQNLPFSPMKISPIRASP\n", " VKTIPSSPSPTTNIFSAPLNNITNCTPMEDEWGEEGF\"\n", - " 3'UTR 2418..2539\n", - " /gene=\"ase1\"\n", - " /locus_tag=\"SPOM_SPAPB1A10.09\"\n", - " primer_bind 1..21\n", + " primer_bind 1..20\n", " /label=\"name\"\n", " /PCR_conditions=\"primer\n", - " sequence:ACCATGTCGACAAGCCATATCCAACCACCAT\"\n", + " sequence:ACCATGTCGACATGCAAACAGTAATGATGGA\"\n", " /ApEinfo_fwdcolor=\"#baffa3\"\n", " /ApEinfo_revcolor=\"#ffbaba\"\n", - " primer_bind complement(2518..2548)\n", - " /label=\"name_rc\"\n", + " primer_bind complement(2225..2243)\n", + " /label=\"name\"\n", " /PCR_conditions=\"primer\n", - " sequence:ATGGCGCGCCGTTTTTTTTTAGGTGTAAATAGTCTTTTAA\"\n", + " sequence:GGCGCGCCATTAAAAGCCTTCTTCTCCC\"\n", " /ApEinfo_fwdcolor=\"#baffa3\"\n", " /ApEinfo_revcolor=\"#ffbaba\"\n", "ORIGIN\n", - " 1 accatgtcga caagccatat ccaaccacca tttttgtgcc aagcttttat gcaaggttaa\n", - " 61 ttccttgtac tgcttgttat gttataatat atcaacatct taacagtttt catatcttcc\n", - " 121 tttatattct attaattgaa tttcaaacat cgttttattg agctcattta catcaaccgg\n", - " 181 ttcaatgcaa acagtaatga tggatgacat tcaaagcact gattctattg ctgaaaaaga\n", - " 241 taatcactct aataatgaat ctaactttac ttggaaagcg tttcgtgaac aagtggaaaa\n", - " 301 gcatttttct aaaattgaaa ggcttcacca agtccttgga acagatggag acaattcatc\n", - " 361 attatttgag ttgtttacaa cggcaatgaa tgcccagctt catgaaatgg aacagtgcca\n", - " 421 gaaaaaactt gaagatgact gtcagcaaag aattgattca atcagatttt tggtttcctc\n", - " 481 attaaagtta acggatgata cttctagtct caaaattgag tctcctttaa ttcagtgttt\n", - " 541 gaatcgtttg tcaatggtag aaggacaata tatggcacag tatgatcaaa agttaagtac\n", - " 601 gattaaaggt atgtaatcgt ctttaattta gacttgtgtt ttaactgatg tatagaaatg\n", - " 661 tatcacaaat tggagtcata ttgtaaccgc ttaggaagtc cgttcgtttt acctgatttt\n", - " 721 gagaattcat ttttatctga tgtatccgat gcttttactg aatctttgag aggacgcatc\n", - " 781 aacgaagccg aaaaggagat tgatgcgaga ttagaggtta ttaattcctt tgaagaagaa\n", - " 841 attttgggtt tgtggtctga actcggtgtt gagcccgctg atgttccaca atacgaacaa\n", - " 901 ttgcttgaat cccatactaa tcgaccaaat gatgtttatg ttactcaaga acttatcgac\n", - " 961 caactttgca agcaaaaaga agttttttcc gctgaaaaag aaaagagaag tgatcattta\n", - " 1021 aaaagtatac aatcagaagt tagcaacttg tggaataagc ttcaagtttc tcccaatgaa\n", - " 1081 caaagtcaat ttggcgattc atcaaacatt aatcaagaaa atatttcatt atgggaaact\n", - " 1141 gaacttgaaa aacttcatca gttaaaaaag gagcatttac ccattttttt agaagactgt\n", - " 1201 cgtcaacaaa ttcttcagct ttgggattct ctgttttatt cagaagaaca aagaaagtcc\n", - " 1261 tttacaccta tgtatgaaga cattattaca gagcaggttc ttacggccca tgaaaactat\n", - " 1321 ataaagcaac tagaggccga agtttctgct aataagtcct ttttaagctt aattaatcgc\n", - " 1381 tatgcctctt taatagaagg aaagaaagag cttgaagcta gttctaatga tgcctctcgt\n", - " 1441 ctaacacaac ggggacgccg ggacccaggt ttacttctac gtgaagagaa aatccgtaag\n", - " 1501 cgactttcta gagaacttcc taaggttcag tcgctgctta taccagagat tacagcatgg\n", - " 1561 gaagaaagaa atggaaggac gttccttttt tatgatgaac cacttctcaa gatttgccaa\n", - " 1621 gaggccactc aaccaaaatc attatataga agtgcaagtg ctgccgcaaa ccgcccgaaa\n", - " 1681 acagcaacta caacggactc tgttaataga acaccttctc aacgagggcg tgtagctgta\n", - " 1741 ccttcaacac caagtgttag gtccgcttct cgagctatga cgagtccaag gacaccgctt\n", - " 1801 cctagagtaa aaaacactca aaatccaagt cgttccatta gtgcagaacc gccatcagca\n", - " 1861 accagtaccg ccaatagaag acaccccact gctaatcgaa ttgatataaa cgctagatta\n", - " 1921 aacagtgcta gtcggtctcg aagcgcgaac atgataagac aaggggcaaa tggtagtgac\n", - " 1981 agcaatatgt cttcttcacc cgtttctgga aattccaata ccccttttaa caagtttcca\n", - " 2041 aattctgtat ctcgcaatac acattttgaa tccaagtcac cgcacccaaa ttactctcga\n", - " 2101 actcctcatg aaacgtattc aaaggcttca tctaagaacg tcccattaag tcctccaaag\n", - " 2161 cagcgtgtag ttaatgaaca cgctttaaat attatgtcgg aaaaattgca aagaactaat\n", - " 2221 ctgaaagaac aaacacccga gatggacatt gaaaacagct cgcagaacct tcctttttct\n", - " 2281 cctatgaaga tatcccccat aagagcatca cccgtaaaga caattccatc atcaccgtcc\n", - " 2341 cccactacca acattttttc tgctccactc aacaatatta caaattgtac accgatggag\n", - " 2401 gatgaatggg gagaagaagg cttttaagct tcttatttac ctaatcgatc aaatttaaat\n", - " 2461 atacatattt ttgcatatga atacagcata tagataattc ataaaagttt attaactgag\n", - " 2521 gtcataatta aaagactatt tacacctaaa aaaaaacggc gcgccat\n", + " 1 accatgtcga catgcaaaca gtaatgatgg atgacattca aagcactgat tctattgctg\n", + " 61 aaaaagataa tcactctaat aatgaatcta actttacttg gaaagcgttt cgtgaacaag\n", + " 121 tggaaaagca tttttctaaa attgaaaggc ttcaccaagt ccttggaaca gatggagaca\n", + " 181 attcatcatt atttgagttg tttacaacgg caatgaatgc ccagcttcat gaaatggaac\n", + " 241 agtgccagaa aaaacttgaa gatgactgtc agcaaagaat tgattcaatc agatttttgg\n", + " 301 tttcctcatt aaagttaacg gatgatactt ctagtctcaa aattgagtct cctttaattc\n", + " 361 agtgtttgaa tcgtttgtca atggtagaag gacaatatat ggcacagtat gatcaaaagt\n", + " 421 taagtacgat taaaggtatg taatcgtctt taatttagac ttgtgtttta actgatgtat\n", + " 481 agaaatgtat cacaaattgg agtcatattg taaccgctta ggaagtccgt tcgttttacc\n", + " 541 tgattttgag aattcatttt tatctgatgt atccgatgct tttactgaat ctttgagagg\n", + " 601 acgcatcaac gaagccgaaa aggagattga tgcgagatta gaggttatta attcctttga\n", + " 661 agaagaaatt ttgggtttgt ggtctgaact cggtgttgag cccgctgatg ttccacaata\n", + " 721 cgaacaattg cttgaatccc atactaatcg accaaatgat gtttatgtta ctcaagaact\n", + " 781 tatcgaccaa ctttgcaagc aaaaagaagt tttttccgct gaaaaagaaa agagaagtga\n", + " 841 tcatttaaaa agtatacaat cagaagttag caacttgtgg aataagcttc aagtttctcc\n", + " 901 caatgaacaa agtcaatttg gcgattcatc aaacattaat caagaaaata tttcattatg\n", + " 961 ggaaactgaa cttgaaaaac ttcatcagtt aaaaaaggag catttaccca tttttttaga\n", + " 1021 agactgtcgt caacaaattc ttcagctttg ggattctctg ttttattcag aagaacaaag\n", + " 1081 aaagtccttt acacctatgt atgaagacat tattacagag caggttctta cggcccatga\n", + " 1141 aaactatata aagcaactag aggccgaagt ttctgctaat aagtcctttt taagcttaat\n", + " 1201 taatcgctat gcctctttaa tagaaggaaa gaaagagctt gaagctagtt ctaatgatgc\n", + " 1261 ctctcgtcta acacaacggg gacgccggga cccaggttta cttctacgtg aagagaaaat\n", + " 1321 ccgtaagcga ctttctagag aacttcctaa ggttcagtcg ctgcttatac cagagattac\n", + " 1381 agcatgggaa gaaagaaatg gaaggacgtt ccttttttat gatgaaccac ttctcaagat\n", + " 1441 ttgccaagag gccactcaac caaaatcatt atatagaagt gcaagtgctg ccgcaaaccg\n", + " 1501 cccgaaaaca gcaactacaa cggactctgt taatagaaca ccttctcaac gagggcgtgt\n", + " 1561 agctgtacct tcaacaccaa gtgttaggtc cgcttctcga gctatgacga gtccaaggac\n", + " 1621 accgcttcct agagtaaaaa acactcaaaa tccaagtcgt tccattagtg cagaaccgcc\n", + " 1681 atcagcaacc agtaccgcca atagaagaca ccccactgct aatcgaattg atataaacgc\n", + " 1741 tagattaaac agtgctagtc ggtctcgaag cgcgaacatg ataagacaag gggcaaatgg\n", + " 1801 tagtgacagc aatatgtctt cttcacccgt ttctggaaat tccaataccc cttttaacaa\n", + " 1861 gtttccaaat tctgtatctc gcaatacaca ttttgaatcc aagtcaccgc acccaaatta\n", + " 1921 ctctcgaact cctcatgaaa cgtattcaaa ggcttcatct aagaacgtcc cattaagtcc\n", + " 1981 tccaaagcag cgtgtagtta atgaacacgc tttaaatatt atgtcggaaa aattgcaaag\n", + " 2041 aactaatctg aaagaacaaa cacccgagat ggacattgaa aacagctcgc agaaccttcc\n", + " 2101 tttttctcct atgaagatat cccccataag agcatcaccc gtaaagacaa ttccatcatc\n", + " 2161 accgtccccc actaccaaca ttttttctgc tccactcaac aatattacaa attgtacacc\n", + " 2221 gatggaggat gaatggggag aagaaggctt ttaatggcgc gcc\n", "//\n" ] } @@ -759,21 +728,21 @@ "output_type": "stream", "text": [ "(Dseqrecord(-30), Dseqrecord(-3916))\n", - "(Dseqrecord(-10), Dseqrecord(-2557), Dseqrecord(-8))\n" + "(Dseqrecord(-10), Dseqrecord(-2255), Dseqrecord(-6))\n" ] } ], "source": [ "# Cleaving the cloning vector with restriction enzymes\n", "\n", - "plamsid_digests = vector.cut(SalI, AscI)\n", + "plasmid_digests = vector.cut(SalI, AscI)\n", "\n", "# Cleaving the gene fragment with restriction enzymes\n", "\n", "gene_digests = Dseqrecord(pcr_product).cut(SalI, AscI)\n", "\n", "# Printing out the digests\n", - "print(plamsid_digests) \n", + "print(plasmid_digests) \n", "print(gene_digests)" ] }, @@ -786,7 +755,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "LOCUS name 6465 bp DNA circular UNK 01-JAN-1980\n", + "LOCUS name 6163 bp DNA circular UNK 01-JAN-1980\n", "DEFINITION description.\n", "ACCESSION id\n", "VERSION id\n", @@ -872,33 +841,10 @@ " primer_bind 3859..3876\n", " /label=\"SP6\"\n", " /note=\"SP6 promoter, forward primer\"\n", - " CDS join(4081..4504,4552..6323)\n", - " /gene=\"ase1\"\n", - " /locus_tag=\"SPOM_SPAPB1A10.09\"\n", - " /codon_start=1\n", - " /product=\"antiparallel microtubule cross-linking factor\n", - " Ase1\"\n", - " /protein_id=\"CAC21482.1\"\n", - " /translation=\"MQTVMMDDIQSTDSIAEKDNHSNNESNFTWKAFREQVEKHFSKIE\n", - " RLHQVLGTDGDNSSLFELFTTAMNAQLHEMEQCQKKLEDDCQQRIDSIRFLVSSLKLTD\n", - " DTSSLKIESPLIQCLNRLSMVEGQYMAQYDQKLSTIKEMYHKLESYCNRLGSPFVLPDF\n", - " ENSFLSDVSDAFTESLRGRINEAEKEIDARLEVINSFEEEILGLWSELGVEPADVPQYE\n", - " QLLESHTNRPNDVYVTQELIDQLCKQKEVFSAEKEKRSDHLKSIQSEVSNLWNKLQVSP\n", - " NEQSQFGDSSNINQENISLWETELEKLHQLKKEHLPIFLEDCRQQILQLWDSLFYSEEQ\n", - " RKSFTPMYEDIITEQVLTAHENYIKQLEAEVSANKSFLSLINRYASLIEGKKELEASSN\n", - " DASRLTQRGRRDPGLLLREEKIRKRLSRELPKVQSLLIPEITAWEERNGRTFLFYDEPL\n", - " LKICQEATQPKSLYRSASAAANRPKTATTTDSVNRTPSQRGRVAVPSTPSVRSASRAMT\n", - " SPRTPLPRVKNTQNPSRSISAEPPSATSTANRRHPTANRIDINARLNSASRSRSANMIR\n", - " QGANGSDSNMSSSPVSGNSNTPFNKFPNSVSRNTHFESKSPHPNYSRTPHETYSKASSK\n", - " NVPLSPPKQRVVNEHALNIMSEKLQRTNLKEQTPEMDIENSSQNLPFSPMKISPIRASP\n", - " VKTIPSSPSPTTNIFSAPLNNITNCTPMEDEWGEEGF\"\n", - " 3'UTR 6324..6445\n", - " /gene=\"ase1\"\n", - " /locus_tag=\"SPOM_SPAPB1A10.09\"\n", - " primer_bind complement(6424..6454)\n", - " /label=\"name_rc\"\n", + " primer_bind complement(6131..6149)\n", + " /label=\"name\"\n", " /PCR_conditions=\"primer\n", - " sequence:ATGGCGCGCCGTTTTTTTTTAGGTGTAAATAGTCTTTTAA\"\n", + " sequence:GGCGCGCCATTAAAAGCCTTCTTCTCCC\"\n", " /ApEinfo_fwdcolor=\"#baffa3\"\n", " /ApEinfo_revcolor=\"#ffbaba\"\n", "ORIGIN\n", @@ -967,49 +913,44 @@ " 3721 agcgggtgtt ggcgggtgtc ggggctggct taactatgcg gcatcagagc agattgtact\n", " 3781 gagagtgcac catatggaca tattgtcgtt agaacgcggc tacaattaat acataacctt\n", " 3841 atgtatcata cacatacgat ttaggtgaca ctatagaacg cggccgccag ctgaagcttc\n", - " 3901 gtacgctgca ggtcgacaag ccatatccaa ccaccatttt tgtgccaagc ttttatgcaa\n", - " 3961 ggttaattcc ttgtactgct tgttatgtta taatatatca acatcttaac agttttcata\n", - " 4021 tcttccttta tattctatta attgaatttc aaacatcgtt ttattgagct catttacatc\n", - " 4081 aaccggttca atgcaaacag taatgatgga tgacattcaa agcactgatt ctattgctga\n", - " 4141 aaaagataat cactctaata atgaatctaa ctttacttgg aaagcgtttc gtgaacaagt\n", - " 4201 ggaaaagcat ttttctaaaa ttgaaaggct tcaccaagtc cttggaacag atggagacaa\n", - " 4261 ttcatcatta tttgagttgt ttacaacggc aatgaatgcc cagcttcatg aaatggaaca\n", - " 4321 gtgccagaaa aaacttgaag atgactgtca gcaaagaatt gattcaatca gatttttggt\n", - " 4381 ttcctcatta aagttaacgg atgatacttc tagtctcaaa attgagtctc ctttaattca\n", - " 4441 gtgtttgaat cgtttgtcaa tggtagaagg acaatatatg gcacagtatg atcaaaagtt\n", - " 4501 aagtacgatt aaaggtatgt aatcgtcttt aatttagact tgtgttttaa ctgatgtata\n", - " 4561 gaaatgtatc acaaattgga gtcatattgt aaccgcttag gaagtccgtt cgttttacct\n", - " 4621 gattttgaga attcattttt atctgatgta tccgatgctt ttactgaatc tttgagagga\n", - " 4681 cgcatcaacg aagccgaaaa ggagattgat gcgagattag aggttattaa ttcctttgaa\n", - " 4741 gaagaaattt tgggtttgtg gtctgaactc ggtgttgagc ccgctgatgt tccacaatac\n", - " 4801 gaacaattgc ttgaatccca tactaatcga ccaaatgatg tttatgttac tcaagaactt\n", - " 4861 atcgaccaac tttgcaagca aaaagaagtt ttttccgctg aaaaagaaaa gagaagtgat\n", - " 4921 catttaaaaa gtatacaatc agaagttagc aacttgtgga ataagcttca agtttctccc\n", - " 4981 aatgaacaaa gtcaatttgg cgattcatca aacattaatc aagaaaatat ttcattatgg\n", - " 5041 gaaactgaac ttgaaaaact tcatcagtta aaaaaggagc atttacccat ttttttagaa\n", - " 5101 gactgtcgtc aacaaattct tcagctttgg gattctctgt tttattcaga agaacaaaga\n", - " 5161 aagtccttta cacctatgta tgaagacatt attacagagc aggttcttac ggcccatgaa\n", - " 5221 aactatataa agcaactaga ggccgaagtt tctgctaata agtccttttt aagcttaatt\n", - " 5281 aatcgctatg cctctttaat agaaggaaag aaagagcttg aagctagttc taatgatgcc\n", - " 5341 tctcgtctaa cacaacgggg acgccgggac ccaggtttac ttctacgtga agagaaaatc\n", - " 5401 cgtaagcgac tttctagaga acttcctaag gttcagtcgc tgcttatacc agagattaca\n", - " 5461 gcatgggaag aaagaaatgg aaggacgttc cttttttatg atgaaccact tctcaagatt\n", - " 5521 tgccaagagg ccactcaacc aaaatcatta tatagaagtg caagtgctgc cgcaaaccgc\n", - " 5581 ccgaaaacag caactacaac ggactctgtt aatagaacac cttctcaacg agggcgtgta\n", - " 5641 gctgtacctt caacaccaag tgttaggtcc gcttctcgag ctatgacgag tccaaggaca\n", - " 5701 ccgcttccta gagtaaaaaa cactcaaaat ccaagtcgtt ccattagtgc agaaccgcca\n", - " 5761 tcagcaacca gtaccgccaa tagaagacac cccactgcta atcgaattga tataaacgct\n", - " 5821 agattaaaca gtgctagtcg gtctcgaagc gcgaacatga taagacaagg ggcaaatggt\n", - " 5881 agtgacagca atatgtcttc ttcacccgtt tctggaaatt ccaatacccc ttttaacaag\n", - " 5941 tttccaaatt ctgtatctcg caatacacat tttgaatcca agtcaccgca cccaaattac\n", - " 6001 tctcgaactc ctcatgaaac gtattcaaag gcttcatcta agaacgtccc attaagtcct\n", - " 6061 ccaaagcagc gtgtagttaa tgaacacgct ttaaatatta tgtcggaaaa attgcaaaga\n", - " 6121 actaatctga aagaacaaac acccgagatg gacattgaaa acagctcgca gaaccttcct\n", - " 6181 ttttctccta tgaagatatc ccccataaga gcatcacccg taaagacaat tccatcatca\n", - " 6241 ccgtccccca ctaccaacat tttttctgct ccactcaaca atattacaaa ttgtacaccg\n", - " 6301 atggaggatg aatggggaga agaaggcttt taagcttctt atttacctaa tcgatcaaat\n", - " 6361 ttaaatatac atatttttgc atatgaatac agcatataga taattcataa aagtttatta\n", - " 6421 actgaggtca taattaaaag actatttaca cctaaaaaaa aacgg\n", + " 3901 gtacgctgca ggtcgacatg caaacagtaa tgatggatga cattcaaagc actgattcta\n", + " 3961 ttgctgaaaa agataatcac tctaataatg aatctaactt tacttggaaa gcgtttcgtg\n", + " 4021 aacaagtgga aaagcatttt tctaaaattg aaaggcttca ccaagtcctt ggaacagatg\n", + " 4081 gagacaattc atcattattt gagttgttta caacggcaat gaatgcccag cttcatgaaa\n", + " 4141 tggaacagtg ccagaaaaaa cttgaagatg actgtcagca aagaattgat tcaatcagat\n", + " 4201 ttttggtttc ctcattaaag ttaacggatg atacttctag tctcaaaatt gagtctcctt\n", + " 4261 taattcagtg tttgaatcgt ttgtcaatgg tagaaggaca atatatggca cagtatgatc\n", + " 4321 aaaagttaag tacgattaaa ggtatgtaat cgtctttaat ttagacttgt gttttaactg\n", + " 4381 atgtatagaa atgtatcaca aattggagtc atattgtaac cgcttaggaa gtccgttcgt\n", + " 4441 tttacctgat tttgagaatt catttttatc tgatgtatcc gatgctttta ctgaatcttt\n", + " 4501 gagaggacgc atcaacgaag ccgaaaagga gattgatgcg agattagagg ttattaattc\n", + " 4561 ctttgaagaa gaaattttgg gtttgtggtc tgaactcggt gttgagcccg ctgatgttcc\n", + " 4621 acaatacgaa caattgcttg aatcccatac taatcgacca aatgatgttt atgttactca\n", + " 4681 agaacttatc gaccaacttt gcaagcaaaa agaagttttt tccgctgaaa aagaaaagag\n", + " 4741 aagtgatcat ttaaaaagta tacaatcaga agttagcaac ttgtggaata agcttcaagt\n", + " 4801 ttctcccaat gaacaaagtc aatttggcga ttcatcaaac attaatcaag aaaatatttc\n", + " 4861 attatgggaa actgaacttg aaaaacttca tcagttaaaa aaggagcatt tacccatttt\n", + " 4921 tttagaagac tgtcgtcaac aaattcttca gctttgggat tctctgtttt attcagaaga\n", + " 4981 acaaagaaag tcctttacac ctatgtatga agacattatt acagagcagg ttcttacggc\n", + " 5041 ccatgaaaac tatataaagc aactagaggc cgaagtttct gctaataagt cctttttaag\n", + " 5101 cttaattaat cgctatgcct ctttaataga aggaaagaaa gagcttgaag ctagttctaa\n", + " 5161 tgatgcctct cgtctaacac aacggggacg ccgggaccca ggtttacttc tacgtgaaga\n", + " 5221 gaaaatccgt aagcgacttt ctagagaact tcctaaggtt cagtcgctgc ttataccaga\n", + " 5281 gattacagca tgggaagaaa gaaatggaag gacgttcctt ttttatgatg aaccacttct\n", + " 5341 caagatttgc caagaggcca ctcaaccaaa atcattatat agaagtgcaa gtgctgccgc\n", + " 5401 aaaccgcccg aaaacagcaa ctacaacgga ctctgttaat agaacacctt ctcaacgagg\n", + " 5461 gcgtgtagct gtaccttcaa caccaagtgt taggtccgct tctcgagcta tgacgagtcc\n", + " 5521 aaggacaccg cttcctagag taaaaaacac tcaaaatcca agtcgttcca ttagtgcaga\n", + " 5581 accgccatca gcaaccagta ccgccaatag aagacacccc actgctaatc gaattgatat\n", + " 5641 aaacgctaga ttaaacagtg ctagtcggtc tcgaagcgcg aacatgataa gacaaggggc\n", + " 5701 aaatggtagt gacagcaata tgtcttcttc acccgtttct ggaaattcca ataccccttt\n", + " 5761 taacaagttt ccaaattctg tatctcgcaa tacacatttt gaatccaagt caccgcaccc\n", + " 5821 aaattactct cgaactcctc atgaaacgta ttcaaaggct tcatctaaga acgtcccatt\n", + " 5881 aagtcctcca aagcagcgtg tagttaatga acacgcttta aatattatgt cggaaaaatt\n", + " 5941 gcaaagaact aatctgaaag aacaaacacc cgagatggac attgaaaaca gctcgcagaa\n", + " 6001 ccttcctttt tctcctatga agatatcccc cataagagca tcacccgtaa agacaattcc\n", + " 6061 atcatcaccg tcccccacta ccaacatttt ttctgctcca ctcaacaata ttacaaattg\n", + " 6121 tacaccgatg gaggatgaat ggggagaaga aggcttttaa tgg\n", "//\n" ] } @@ -1017,12 +958,12 @@ "source": [ "# Ligating, then circularising the synthetic plasmid\n", "\n", - "Synthetic_Vector = plamsid_digests[1] + gene_digests [1]\n", - "Synthetic_Vector = Synthetic_Vector.looped()\n", + "synthetic_vector = plasmid_digests[1] + gene_digests [1]\n", + "synthetic_vector = synthetic_vector.looped()\n", "\n", "# Printing out the completed cloning vector\n", "\n", - "print(Synthetic_Vector.format(\"gb\"))" + "print(synthetic_vector.format(\"gb\"))" ] } ], @@ -1042,7 +983,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.5" + "version": "3.12.6" } }, "nbformat": 4, diff --git a/docs/notebooks/Gibson.ipynb b/docs/notebooks/Gibson.ipynb index b9cadc28..a875d550 100644 --- a/docs/notebooks/Gibson.ipynb +++ b/docs/notebooks/Gibson.ipynb @@ -32,9 +32,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { diff --git a/docs/notebooks/Importing_Seqs.ipynb b/docs/notebooks/Importing_Seqs.ipynb index 3acfd1ef..fa7cd1a9 100755 --- a/docs/notebooks/Importing_Seqs.ipynb +++ b/docs/notebooks/Importing_Seqs.ipynb @@ -34,9 +34,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { diff --git a/docs/notebooks/PCR.ipynb b/docs/notebooks/PCR.ipynb index a5f9be41..b8db61dc 100755 --- a/docs/notebooks/PCR.ipynb +++ b/docs/notebooks/PCR.ipynb @@ -32,9 +32,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, { diff --git a/docs/notebooks/Restrict_Ligate_Cloning.ipynb b/docs/notebooks/Restrict_Ligate_Cloning.ipynb index 636aa648..45afbefe 100644 --- a/docs/notebooks/Restrict_Ligate_Cloning.ipynb +++ b/docs/notebooks/Restrict_Ligate_Cloning.ipynb @@ -29,9 +29,14 @@ "metadata": {}, "outputs": [], "source": [ - "# Install pydna \n", - "%%capture\n", - "!pip install pydna" + "# Install pydna (only when running on Colab)\n", + "import sys\n", + "if 'google.colab' in sys.modules:\n", + " %%capture\n", + " # Install the current development version of pydna (comment to install pip version)\n", + " !pip install git+https://github.com/BjornFJohansson/pydna@dev_bjorn\n", + " # Install pip version instead (uncomment to install)\n", + " # !pip install pydna\n" ] }, {