当前位置:   article > 正文

生物信息学:任选一种编程语言,设计一个双序列全局比对的程序_设计一个双序列全局比对的程序。要求: 1)输入两条蛋白质序列,输出比对结果例如: a

设计一个双序列全局比对的程序。要求: 1)输入两条蛋白质序列,输出比对结果例如: a

任选一种编程语言,设计一个双序列全局比对的程序。要求:
1) 输入两条蛋白质序列,输出比对结果例如:
Alignment Score: 12345
E E E E E K K K K K A A A A A F F F
E E E E E - - - - - B B B B B F F F
2) 使用BLOSUM62矩阵来对序列中氨基酸符号的match和mismatch打分。
3) 使用动态规划的方法(Needleman-Wunsch算法)。
4) 计算空位(gap)的罚分时,使用仿射空位罚分策略,gap opening的分数为-11,gap extension的分数为-1。
5) 测试程序时,使用Horse Hemoglobin subunit theta-1(马的theta-1亚基血红蛋白)序列和Bullfrog Hemoglobin subunit alpha-type(牛蛙的alpha型亚基血红蛋白)序列。
6) 将程序输出结果与BLAST软件的进行比较。
登录BLAST在线服务器http://blast.ncbi.nlm.nih.gov/Blast.cgi。

代码如下:

global S
global E
global MIN
global amino
global blosum
S   = -11
E   = -1
MIN = -float("inf")
amino = ['A', 'R', 'N', 'D', 'C', 'Q', 'E', 'G', 'H', 'I', 'L', 'K', 'M', 'F', 'P', 'S', 'T', 'W', 'Y', 'V', 'B', 'Z', 'X', '*']
blosum = [
[ 4, -1, -2, -2,  0, -1, -1,  0, -2, -1, -1, -1, -1, -2, -1,  1,  0, -3, -2,  0, -2, -1,  0, -4],
[-1,  5,  0, -2, -3,  1,  0, -2,  0, -3, -2,  2, -1, -3, -2, -1, -1, -3, -2, -3, -1,  0, -1, -4],
[-2,  0,  6,  1, -3,  0,  0,  0,  1, -3, -3,  0, -2, -3, -2,  1,  0, -4, -2, -3,  3,  0, -1, -4],
[-2, -2,  1,  6, -3,  0,  2, -1, -1, -3, -4, -1, -3, -3, -1,  0, -1, -4, -3, -3,  4,  1, -1, -4],
[ 0, -3, -3, -3,  9, -3, -4, -3, -3, -1, -1, -3, -1, -2, -3, -1, -1, -2, -2, -1, -3, -3, -2, -4],
[-1,  1,  0,  0, -3,  5,  2, -2,  0, -3, -2,  1,  0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号