Spaces:
Sleeping
Sleeping
Zach-Of-All-Trades
commited on
Commit
•
821ebf7
1
Parent(s):
4dad5f5
Update app.py
Browse files
app.py
CHANGED
@@ -1,5 +1,83 @@
|
|
1 |
import gradio as gr
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
def find_complimentary_dna(dna_to_compliemnt):
|
4 |
_complement_seq = ''
|
5 |
|
|
|
1 |
import gradio as gr
|
2 |
+
DNA = 'GGTCAGAAAAAGCCCTCTCCATGTCTACTCACGATACATCCCTGAAAACCACTGAGGAAGTGGCTTTTCAGATCATCTTGCTTTGCCAGTTTGGGGTTGGGACTTTTGCCAATGTATTTCTCTTTGTCTATAATTTCTCTCCAATCTCGACTGGTTCTAAACAGAGGCCCAGACAAGTGATTTTAAGACACATGGCTGTGGCCAATGCCTTAACTCTCTTCCTCACTATATTTCCAAACAACATGATGACTTTTGCTCCAATTATTCCTCAAACTGACCTCAAATGTAAATTAGAATTCTTCACTCGCCTCGTGGCAAGAAGCACAAACTTGTGTTCAACTTGTGTTCTGAGTATCCATCAGTTTGTCACACTTGTTCCTGTTAATTCAGGTAAAGGAATACTCAGAGCAAGTGTCACAAACATGGCAAGTTATTCTTGTTACAGTTGTTGGTTCTTCAGTGTCTTAAATAACATCTACATTCCAATTAAGGTCACTGGTCCACAGTTAACAGACAATAACAATAACTCTAAAAGCAAGTTGTTCTGTTCCACTTCTGATTTCAGTGTAGGCATTGTCTTCTTGAGGTTTGCCCATGATGCCACATTCATGAGCATCATGGTCTGGACCAGTGTCTCCATGGTACTTCTCCTCCATAGACATTGTCAGAGAATGCAGTACATATTCACTCTCAATCAGGACCCCAGGGGCCAAGCAGAGACCACAGCAACCCATACTATCCTGATGCTGGTAGTCACATTTGTTGGCTTTTATCTTCTAAGTCTTATTTGTATCATCTTTTACACCTATTTTATATATTCTCATCATTCCCTGAGGCATTGCAATGACATTTTGGTTTCGGGTTTCCCTACAATTTCTCCTTTACTGTTGACCTTCAGAGACCCTAAGGGTCCTTGTTCTGTGTTCTTCAACTGTTGAAAGCCAGAGTCACTAAAAATGCCAAACACAGAAGACAGCTTTGCTAATACCATTAAATACTTTATTCCATAAATATGTTTTTAAAAGCTTGTATGAACAAGGTATGGTGCTCACTGCTATACTTATAAAAGAGTAAGGTTATAATCACTTGTTGATATGAAAAGATTTCTGGTTGGAATCTGATTGAAACAGTGAGTTATTCACCACCCTCCATTCTCT'
|
3 |
+
base_pairing = {'A':'U', 'U':'A', 'C':'G','G':'C'}
|
4 |
+
def transcribe(seq):
|
5 |
+
RNA_seq = seq.replace('T', 'U')
|
6 |
+
### Define location of start codon (AUG)
|
7 |
+
start_codon = RNA_seq.find('AUG')
|
8 |
+
codons = []
|
9 |
|
10 |
+
for i in range(start_codon, len(RNA_seq), 3):
|
11 |
+
codon = RNA_seq[i:i + 3]
|
12 |
+
if len(codon)==3:
|
13 |
+
codons.append(codon)
|
14 |
+
return codons
|
15 |
+
|
16 |
+
#######################################################################################
|
17 |
+
# define dictionary to translate three-letter mRNA to three-letter amino acid here
|
18 |
+
#######################################################################################
|
19 |
+
|
20 |
+
translate = {
|
21 |
+
'UUU':'Phe','UCU':'Ser','UAU':'Tyr','UGU':'Cys',
|
22 |
+
'UUC':'Phe','UCC':'Ser','UAC':'Tyr','UGC':'Cys',
|
23 |
+
'UUA':'Leu','UCA':'Ser','UAA':'Stop','UGA':'Stop',
|
24 |
+
'UUG':'Leu','UCG':'Ser','UAG':'Stop','UGG':'Trp',
|
25 |
+
'CUU':'Leu','CCU':'Pro','CAU':'His','CGU':'Arg',
|
26 |
+
'CUC':'Leu','CCC':'Pro','CAC':'His','CGC':'Arg',
|
27 |
+
'CUA':'Leu','CCA':'Pro','CAA':'Gln','CGA':'Arg',
|
28 |
+
'CUG':'Leu','CCG':'Pro','CAG':'Gln','CGG':'Arg',
|
29 |
+
'AUU':'Ile','ACU':'Thr','AAU':'Asn','AGU':'Ser',
|
30 |
+
'AUC':'Ile','ACC':'Thr','AAC':'Asn','AGC':'Ser',
|
31 |
+
'AUA':'Ile','ACA':'Thr','AAA':'Lys','AGA':'Arg',
|
32 |
+
'AUG':'Met','ACG':'Thr','AAG':'Lys','AGG':'Arg',
|
33 |
+
'GUU':'Val','GCU':'Ala','GAU':'Asp','GGU':'Gly',
|
34 |
+
'GUC':'Val','GCC':'Ala','GAC':'Asp','GGC':'Gly',
|
35 |
+
'GUA':'Val','GCA':'Ala','GAA':'Glu','GGA':'Gly',
|
36 |
+
'GUG':'Val','GCG':'Ala','GAG':'Glu','GGG':'Gly'
|
37 |
+
}
|
38 |
+
|
39 |
+
#######################################################################################
|
40 |
+
# define dictionary to map three-letter amino acid to one-letter amino acid here
|
41 |
+
#######################################################################################
|
42 |
+
|
43 |
+
AA_mapping = {
|
44 |
+
'Ala':'A', 'Arg':'R','Asn':'N',
|
45 |
+
'Asp':'D', 'Cys':'C','Gln':'Q',
|
46 |
+
'Glu':'E', 'Gly':'G','His':'H',
|
47 |
+
'Ile':'I', 'Leu':'L','Lys':'K',
|
48 |
+
'Met':'M', 'Phe':'F','Pro':'P',
|
49 |
+
'Ser':'S', 'Thr':'T','Trp':'W',
|
50 |
+
'Tyr':'Y','Val':'V'
|
51 |
+
}
|
52 |
+
|
53 |
+
def transcribe(seq):
|
54 |
+
RNA_seq = seq.replace('T', 'U')
|
55 |
+
reading_frames = []
|
56 |
+
# forward strand
|
57 |
+
|
58 |
+
for pos in range(0,3):
|
59 |
+
codons = []
|
60 |
+
for i in range(pos, len(RNA_seq), 3):
|
61 |
+
codon = RNA_seq[i:i + 3]
|
62 |
+
if len(codon)==3:
|
63 |
+
codons.append(codon)
|
64 |
+
reading_frames.append(codons)
|
65 |
+
|
66 |
+
# # reverse strand
|
67 |
+
RNA_seq_rev = RNA_seq[::-1]
|
68 |
+
cDNA = ''
|
69 |
+
for i in range(0, len(RNA_seq_rev)):
|
70 |
+
cDNA += base_pairing[RNA_seq_rev[i]]
|
71 |
+
|
72 |
+
for pos in range(0,3):
|
73 |
+
codons = []
|
74 |
+
for i in range(pos, len(cDNA), 3):
|
75 |
+
codon = cDNA[i:i + 3]
|
76 |
+
if len(codon)==3:
|
77 |
+
codons.append(codon)
|
78 |
+
reading_frames.append(codons)
|
79 |
+
|
80 |
+
return reading_frames
|
81 |
def find_complimentary_dna(dna_to_compliemnt):
|
82 |
_complement_seq = ''
|
83 |
|