Advertisement
asteroidsteam

Dna / Rna python processing

Jun 23rd, 2019
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.58 KB | None | 0 0
  1. RNA3 = {
  2.  "AAA": "Lys",
  3.  "AAC": "Asn",
  4.  "AAG": "Lys",
  5.  "AAU": "Asn",
  6.  "ACA": "Thr",
  7.  "ACC": "Thr",
  8.  "ACG": "Thr",
  9.  "ACU": "Thr",
  10.  "AGA": "Arg",
  11.  "AGC": "Ser",
  12.  "AGG": "Arg",
  13.  "AGU": "Ser",
  14.  "AUA": "Lle",
  15.  "AUC": "Lle",
  16.  "AUG": "Mel",
  17.  "AUU": "Lle",
  18.  "CAA": "Gln",
  19.  "CAC": "His",
  20.  "CAG": "Gln",
  21.  "CAU": "His",
  22.  "CCA": "Pro",
  23.  "CCC": "Pro",
  24.  "CCG": "Pro",
  25.  "CCU": "Pro",
  26.  "CGA": "Arg",
  27.  "CGC": "Arg",
  28.  "CGG": "Arg",
  29.  "CGU": "Arg",
  30.  "CUA": "Leu",
  31.  "CUC": "Leu",
  32.  "CUG": "Leu",
  33.  "CUU": "Leu",
  34.  "GAA": "Glu",
  35.  "GAC": "Asp",
  36.  "GAG": "Glu",
  37.  "GAU": "Asp",
  38.  "GCA": "Ala",
  39.  "GCC": "Ala",
  40.  "GCG": "Ala",
  41.  "GCU": "Ala",
  42.  "GGA": "Gly",
  43.  "GGC": "Gly",
  44.  "GGG": "Gly",
  45.  "GGU": "Gly",
  46.  "GUA": "Val",
  47.  "GUC": "Val",
  48.  "GUG": "Val",
  49.  "GUU": "Val",
  50.  "UAA": "Stop",
  51.  "UAC": "Tyr",
  52.  "UAG": "Stop",
  53.  "UAU": "Tyr",
  54.  "UCA": "Ser",
  55.  "UCC": "Ser",
  56.  "UCG": "Ser",
  57.  "UCU": "Ser",
  58.  "UGA": "Stop",
  59.  "UGC": "Cys",
  60.  "UGG": "Trp",
  61.  "UGU": "Cys",
  62.  "UUA": "Leu",
  63.  "UUC": "Phe",
  64.  "UUG": "Leu",
  65.  "UUU": "Phe",
  66. }
  67. AMINOACID_CHEM = {
  68.     "Ala": "CH3-CH(NH2)-COOH",
  69.     "Arg": "HN=C(NH2)-NH-(CH2)3-CH(NH2)-COOH",
  70.     "Asn": "H2N-CO-CH2-CH(NH2)-COOH",
  71.     "Asp": "HOOC-CH2-CH(NH2)-COOH",
  72.     "Cys": "HS-CH2-CH(NH2)-COOH",
  73.     "Gln": "H2N-CO-(CH2)2-CH(NH2)-COOH",
  74.     "Glu": "HOOC-(CH2)2-CH(NH2)-COOH",
  75.     "Gly": "NH2-CH2-COOH",
  76.     "His": "NH-CH=N-CH=C-CH2-CH(NH2)-COOH",
  77.     "Lle": "CH3-CH2-CH(CH3)-CH(NH2)-COOH",
  78.     "Leu": "(CH3)2-CH-CH2-CH(NH2)-COOH",
  79.     "Lys": "H2N-(CH2)4-CH(NH2)-COOH",
  80.     "Met": "CH3-S-(CH2)2-CH(NH2)-COOH",
  81.     "Phe": "Ph-CH2-CH(NH2)-COOH",
  82.     "Pro": "NH-(CH2)3-CH-COOH",
  83.     "Ser": "HO-CH2-CH(NH2)-COOH",
  84.     "Thr": "CH3-CH(OH)-CH(NH2)-COOH",
  85.     "Trp": "Ph-NH-CH=C-CH2-CH(NH2)-COOH",
  86.     "Tyr": "HO-Ph-CH2-CH(NH2)-COOH",
  87.     "Val": "(CH3)2-CH-CH(NH2)-COOH"
  88. }
  89. RNA_CONVERSION = {
  90.     "A": "A",
  91.     "C": "C",
  92.     "G": "G",
  93.     "T": "U"
  94. }
  95.  
  96. def DNAtoRNA(DNA):
  97.     RNA = ""
  98.     for c in DNA:
  99.         RNA += RNA_CONVERSION[c]
  100.     return RNA
  101.  
  102. def RNAtoAminoAcid(RNA):
  103.     amino = ""
  104.     i = 0;
  105.     while (i <= len(RNA)-1):
  106.         next3 = RNA[i:3+i];
  107.         if (len(next3) != 3):
  108.             break;
  109.         if (RNA3[next3] == "Stop"):
  110.             break;
  111.         amino += RNA3[next3];
  112.         i+=3;
  113.     return amino;
  114.  
  115. def AminoAcidtoChem(AMINO):
  116.     chem = ""
  117.     i = 0;
  118.     while (i <= len(AMINO)-1):
  119.         next3 = AMINO[i:3+i];
  120.         if (len(next3) != 3):
  121.             break;
  122.         if (AMINOACID_CHEM[next3] == "Stop"):
  123.             break;
  124.         chem += AMINOACID_CHEM[next3] + " + ";
  125.         i+=3;
  126.     return chem[:-3];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement