1、实验四 基于 Matlab 的序列比对分析实验目的1 了解MATLAB7.x生物信息工具箱中的序列比对方法;2 熟悉从数据库获取序列信息, 查找序列的开放阅读框, 将核普酸序列转换为氨基酸序列, 绘制比较两氨基酸序列的散点图, 用Needleman-wunsch算法和Smith-Waterman算法进行比对, 以及计算两序列的同一性的方法;3 熟悉与序列比对相关的生物信息学函数。所需软件MATLAB 7.0 或 MATLAB 7.0 以上的版本实验内容序列比对是生物信息学的重要基础。进行序列比对的目的之一是判断两个序列之间是否具有足够的相似性,从而判定二者之间是否具有同源性。序列比对的基本算法
2、主要有两个,一个是用于全局比对的 Needleman-Wunsch 算法,另一个是主要用于局部比对的 Smith-Waterman 算法,而后者又是在前者的基础上发展起来的。在 MATLAB 生物信息工具箱中,序列比对主要用这两种算法。确定两个序列的相似性是生物信息学的基础工作,通过序列比对(又称序列联配) ,可以确定两个序列是否具有同源性。1. 查找序列信息 Tay-Sachs 症是一种由于缺乏 -氨基已糖苷酶 A(Hex A)而导致的常染色体隐性遗传疾病。这种酶能分解大脑和神经细胞中的神经节苷脂(GM2) 。基因 HEXA 编码该酶的 亚基,而第三个基因 GM2A 编码活化剂蛋白质GM2。
3、1.1 查找目的基因 Tay-Sachs在 NCBI(http:/www.ncbi.nlm.nih.gov)上查找信息,在 Search 列表中选择Nucleotide,在 for 框中输入Tay-Sachs, 点击 Go。1.2 读入序列数据查找结果返回编码酶HexA的和亚基的基因和编码活化剂酶的相关页面。NCBI中人类基因HEXA的登录号是NM_000520。用 fastaread或genbankread函数可将基因信息被以结构列表的形式导入MATLAB工作区。方式1:HumanHEXA = fastaread(NM_000520.fasta);humanHEXA=getfield(Hum
4、anHEXA,Sequence);方式 2:HumanHEXA = genbankread(NM_000520.gb);humanHEXA=getfield(HumanHEXA,Sequence)1.3 读入另一序列的信息 mouseHEXA许多基因的序列和功能通过同源基因在进化过程中被保留下来。同源基因就是有共同祖先或是相似序列的基因。查找公共数据库的目的之一就是找出相似的基因。如果用户能在数据库中定位一个未知的基因,那么这个未知基因和已知基因的功能和特征很可能是相同的。用 fastaread 或 genbankread 函数可将鼠类 HEXA 基因信息被以结构列表的形式导入 MATLAB
5、工作区(NCBI 中鼠类基因 HEXA 的序列号是 AK080777)。方式 1:MouseHEXA = fastaread(AK080777.fasta);mouseHEXA=getfield(MouseHEXA, Sequence)方式 2:MouseHEXA = genbankread(AK080777.gb);mouseHEXA=getfield(MouseHEXA, Sequence)2 确定蛋白质编码序列一个核苷酸序列在蛋白质编码段的前后都包含了调控序列。通过分析这个序列,可以确定在编码最终蛋白质中亚氨基酸的核苷酸。2.1 查找人类 HEXA 的 ORF使用seqshoworfs函
6、数输出人类HEXA的所有阅读框中 ORF中起始和终止密码子的位置。humanORFs = seqshoworfs(humanHEXA)结果显示了三个阅读框的ORF, 分别以蓝色、红色和绿色标记, 其中最长的ORF在第 1个阅读框。阅读框部分省略阅读框部分省略阅读框部分省略2.2 确定鼠类 HEXA 的 ORF使用seqshoworfs函数输出人类HEXA的所有阅读框中 ORF中起始和终止密码子的位置。mouseORFs = seqshoworfs(mouseHEXA)结果得到三个阅读框的ORF, 分别以蓝色、红色和绿色标记, 其中最长的ORF在第一个阅读框。Frame 1阅读框部分省略阅读框部
7、分省略阅读框部分省略3. 比较氨基酸序列在确定核苷酸序列中的 ORF 之后,就可以将核苷酸序列的蛋白质编码段转换为相应的氨基酸序列。并使用比对功能来确定两序列的相似性。3.1 将ORF转换为氨基酸序列mouseProtein = nt2aa(mouseHEXA);由于人类的 ORF 在第一个阅读框, 所以需要指出其位置humanProtein = nt2aa(humanHEXA,Frame,1);3.2 绘制散点图比较人类和鼠类的氨基酸序列。seqdotplot(humanProtein,mouseProtein,4,1)ylabel(Human hexosaminidase A);xlabe
8、l(Mouse hexosaminidase A);散点图是确定两序列相似性最简单的方法之一。图中对角线平直连续, 表示这两个序列相似性较好。3.3 比对这两个氨基酸序列下面nwalign函数有目的地比对两序列。采用的是Needleman-wunsch算法, 可返回全局比对的计算统计量。globalscore, globalAlignment = nwalign(humanProtein,mouseProtein)showalignment(globalAlignment);Identities = 486/753 (65%), Positives = 570/753 (76%) 3.4 截短
9、序列寻找终点:humanStops = find(humanProtein = *)mouseStops = find(mouseProtein = *)下面将序列截短至只含第一个甲硫氨酸至第一个停止符,进行局部比对。截短序列至只包含蛋白质的氨基酸序列和停止符。humanSeq = humanProtein(70:humanStops(2);humanSeqFormatted = seqdisp(humanSeq)mouseSeq = mouseProtein(11:mouseStops(1);mouseSeqFormatted = seqdisp(mouseSeq)3.5 比对被截短的氨基酸序列globalscore, globalalignment = nwalign(humanSeq,mouseSeq);showalignment(globalalignment);Identities = 450/540 (83%), Positives = 507/540 (94%)