1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
# Set up the IUPAC alphabet properties
from Bio.PropertyManager import default_manager
from Bio import Alphabet
from Bio.Alphabet import IUPAC
from Bio.Data import IUPACData
from Bio import Transcribe, Translate
set_prop = default_manager.class_property
# weight tables
set_prop[IUPAC.IUPACUnambiguousDNA]["weight_table"] = \
IUPACData.unambiguous_dna_weights
set_prop[IUPAC.IUPACAmbiguousDNA]["weight_table"] = \
IUPACData.avg_ambiguous_dna_weights
set_prop[IUPAC.IUPACUnambiguousRNA]["weight_table"] = \
IUPACData.unambiguous_rna_weights
set_prop[IUPAC.IUPACAmbiguousRNA]["weight_table"] = \
IUPACData.avg_ambiguous_rna_weights
set_prop[IUPAC.IUPACProtein]["weight_table"] = \
IUPACData.protein_weights
set_prop[IUPAC.ExtendedIUPACProtein]["weight_table"] = \
IUPACData.avg_extended_protein_weights
set_prop[IUPAC.IUPACUnambiguousDNA]["weight_range_table"] = \
IUPACData.unambiguous_dna_weight_ranges
set_prop[IUPAC.IUPACAmbiguousDNA]["weight_range_table"] = \
IUPACData.ambiguous_dna_weight_ranges
set_prop[IUPAC.IUPACUnambiguousRNA]["weight_range_table"] = \
IUPACData.unambiguous_rna_weight_ranges
set_prop[IUPAC.IUPACAmbiguousRNA]["weight_range_table"] = \
IUPACData.ambiguous_rna_weight_ranges
set_prop[IUPAC.IUPACProtein]["weight_range_table"] = \
IUPACData.protein_weight_ranges
set_prop[IUPAC.ExtendedIUPACProtein]["weight_range_table"] = \
IUPACData.extended_protein_weight_ranges
# transcriber objects
set_prop[Alphabet.DNAAlphabet]["transcriber"] = \
Transcribe.generic_transcriber
set_prop[IUPAC.IUPACAmbiguousDNA]["transcriber"] = \
Transcribe.ambiguous_transcriber
set_prop[IUPAC.IUPACUnambiguousDNA]["transcriber"] = \
Transcribe.unambiguous_transcriber
set_prop[Alphabet.RNAAlphabet]["transcriber"] = \
Transcribe.generic_transcriber
set_prop[IUPAC.IUPACAmbiguousRNA]["transcriber"] = \
Transcribe.ambiguous_transcriber
set_prop[IUPAC.IUPACUnambiguousRNA]["transcriber"] = \
Transcribe.unambiguous_transcriber
# translator objects
for name, obj in Translate.unambiguous_dna_by_name.items():
property = "translator.name." + name
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
set_prop[obj.table.protein_alphabet.__class__][property] = obj
for name, obj in Translate.unambiguous_rna_by_name.items():
property = "translator.name." + name
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
property = "rna_translator.name." + name
set_prop[obj.table.protein_alphabet.__class__][property] = obj
for id, obj in Translate.unambiguous_dna_by_id.items():
property = "translator.id.%d" % id
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
set_prop[obj.table.protein_alphabet.__class__][property] = obj
if id == 1:
set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj
set_prop[obj.table.protein_alphabet.__class__]["translator"] = obj
for id, obj in Translate.unambiguous_rna_by_id.items():
property = "translator.id.%d" % id
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
property = "rna_translator.id.%d" % id
set_prop[obj.table.protein_alphabet.__class__][property] = obj
if id == 1:
set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj
set_prop[obj.table.protein_alphabet.__class__]["rna_translator"] = obj
# ambiguous translator objects
for name, obj in Translate.ambiguous_dna_by_name.items():
property = "translator.name." + name
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
property = "ambiguous_translator.name." + name
set_prop[obj.table.protein_alphabet.__class__][property] = obj
for name, obj in Translate.ambiguous_rna_by_name.items():
property = "translator.name." + name
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
property = "ambiguous_rna_translator.name." + name
set_prop[obj.table.protein_alphabet.__class__][property] = obj
for id, obj in Translate.ambiguous_dna_by_id.items():
property = "translator.id.%d" % id
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
property = "ambiguous_translator.id.%d" % id
set_prop[obj.table.protein_alphabet.__class__][property] = obj
if id == 1:
set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj
set_prop[obj.table.protein_alphabet.__class__]["ambiguous_translator"] = obj
for id, obj in Translate.ambiguous_rna_by_id.items():
property = "translator.id.%d" % id
set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj
property = "ambiguous_rna_translator.id.%d" % id
set_prop[obj.table.protein_alphabet.__class__][property] = obj
if id == 1:
set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj
set_prop[obj.table.protein_alphabet.__class__]["ambiguous_rna_translator"] = obj
|