Difference between revisions of "Minsu Kim/python/Rosalind"
imported>Minsukim |
imported>Minsukim |
||
Line 12: | Line 12: | ||
<p><a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem7">[7]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem8">[8]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem9">[9]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem10">[10]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem11">[11]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem12">[12]</a></p> | <p><a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem7">[7]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem8">[8]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem9">[9]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem10">[10]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem11">[11]</a> <a href="http://biolecture.org/index.php?title=Minsu_Kim/python/Rosalind / problem12">[12]</a></p> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<h2>Computing CG Content</h2> | <h2>Computing CG Content</h2> | ||
− | <p> | + | <p>f = open('rosalind_gc.txt','r')<br /> |
seq_list = dict()<br /> | seq_list = dict()<br /> | ||
for line in f_fa:<br /> | for line in f_fa:<br /> | ||
Line 85: | Line 23: | ||
else:<br /> | else:<br /> | ||
seq_list[name]= line.strip()<br /> | seq_list[name]= line.strip()<br /> | ||
− | + | f.close()</p> | |
<p>seq_CG = dict()<br /> | <p>seq_CG = dict()<br /> |
Revision as of 21:57, 12 December 2017
Contents
I solve the problem relative the bioinformatics in web site : rosalind
Problem
basic problem
related with bioinformatics
Computing CG Content
f = open('rosalind_gc.txt','r')
seq_list = dict()
for line in f_fa:
if line.startswith('>'):
name = line.strip('>').strip()
seq_list[name] = ''
else:
seq_list[name]= line.strip()
f.close()
seq_CG = dict()
for k in seq_list:
count = 0
s = seq_list[k]
s = list(s)
for i in range(0,len(s)):
if s[i] == 'C' or s[i] == 'G':
count = count + 1
p = count / len(s)
seq_CG[k] = p
inverse = [(value, key) for key, value in seq_CG.items()]
max(inverse)
import matplotlib.pyplot as plt
seq_list = []
f_fa = open('Ecoli_genome.fasta', 'r')
for line in f_fa:
if not line.startswith('>'):
seq_list.append(line.strip())
tmp_seq = ''.join(seq_list)
count_G = 0
count_C = 0
count_list = []
for tmp_n in tmp_seq:
if tmp_n == 'G':
count_G += 1
if tmp_n == 'C':
count_C += 1
count_list.append(count_G-count_C)
pos_list = range(0,len(tmp_seq))
fig = plt.figure(figsize = (10,6))
ax1 = fig.add_subplot(1,1,1)
ax1.plot(pos_list, count_list, 'b-')
ax1.grid()
plt.show()
f_fa.close()
Dynamic Program
def maxvalue(a,b,c):
a=a+5
b=b-6
c=c-6
return max(a,b,c)
def maxvalue2(a,b,c):
a=a-2
b=b-6
c=c-6
return max(a,b,c)
def compare(a,b):
import numpy as np
scoring = np.zeros([len(a)+1,len(b)+1])
for i in range(0,len(a)+1):
scoring[i,0]=-6*i
for j in range(0,len(b)+1):
scoring[0,j]=-6*j
for row in range(1,len(a)+1):
for column in range(1,len(b)+1):
if b[column-1]==a[row-1]:
scoring[row,column] = maxvalue(scoring[row-1,column-1],scoring[row-1,column],scoring[row,column-1])
if b[column-1]!=a[row-1]:
scoring[row,column] = maxvalue2(scoring[row-1,column-1],scoring[row-1,column],scoring[row,column-1])
print(scoring)
list=[]
for row in range(1,len(a)+1):
for column in range(1,len(b)+1):
new=scoring[row,column]
list.append(new)
mxv=max(list)
print(mxv)