实验四 基于Matlab的序列比对分析325.docx
- 文档编号:11336580
- 上传时间:2023-02-27
- 格式:DOCX
- 页数:13
- 大小:233.62KB
实验四 基于Matlab的序列比对分析325.docx
《实验四 基于Matlab的序列比对分析325.docx》由会员分享,可在线阅读,更多相关《实验四 基于Matlab的序列比对分析325.docx(13页珍藏版)》请在冰豆网上搜索。
实验四基于Matlab的序列比对分析325
实验四基于Matlab的序列比对分析
实验目的
1.了解MATLAB7.x生物信息工具箱中的序列比对方法;
2.熟悉从数据库获取序列信息,查找序列的开放阅读框,将核普酸序列转换为氨基酸序列,绘制比较两氨基酸序列的散点图,用Needleman-wunsch算法和Smith-Waterman算法进行比对,以及计算两序列的同一性的方法;
3.熟悉与序列比对相关的生物信息学函数。
所需软件
MATLAB7.0或MATLAB7.0以上的版本
实验内容
序列比对是生物信息学的重要基础。
进行序列比对的目的之一是判断两个序列之间是否具有足够的相似性,从而判定二者之间是否具有同源性。
序列比对的基本算法主要有两个,一个是用于全局比对的Needleman-Wunsch算法,另一个是主要用于局部比对的Smith-Waterman算法,而后者又是在前者的基础上发展起来的。
在MATLAB生物信息工具箱中,序列比对主要用这两种算法。
确定两个序列的相似性是生物信息学的基础工作,通过序列比对(又称序列联配),可以确定两个序列是否具有同源性。
1.查找序列信息
Tay-Sachs症是一种由于缺乏ß-氨基已糖苷酶A(HexA)而导致的常染色体隐性遗传疾病。
这种酶能分解大脑和神经细胞中的神经节苷脂(GM2)。
基因HEXA编码该酶的ß亚基,而第三个基因GM2A编码活化剂蛋白质GM2。
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(HumanHEXA,'Sequence');
方式2:
HumanHEXA=genbankread('NM_000520.gb');
humanHEXA=getfield(HumanHEXA,'Sequence')
1.3读入另一序列的信息mouseHEXA
许多基因的序列和功能通过同源基因在进化过程中被保留下来。
同源基因就是有共同祖先或是相似序列的基因。
查找公共数据库的目的之一就是找出相似的基因。
如果用户能在数据库中定位一个未知的基因,那么这个未知基因和已知基因的功能和特征很可能是相同的。
用fastaread或genbankread函数可将鼠类HEXA基因信息被以结构列表的形式导入MATLAB工作区(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函数输出人类HEXA的所有阅读框中ORF中起始和终止密码子的位置。
humanORFs=seqshoworfs(humanHEXA)
结果显示了三个阅读框的ORF,分别以蓝色、红色和绿色标记,其中最长的ORF在第1个阅读框。
阅读框部分省略
阅读框部分省略
阅读框部分省略
2.2确定鼠类HEXA的ORF
使用seqshoworfs函数输出人类HEXA的所有阅读框中ORF中起始和终止密码子的位置。
mouseORFs=seqshoworfs(mouseHEXA)
结果得到三个阅读框的ORF,分别以蓝色、红色和绿色标记,其中最长的ORF在第一个阅读框。
Frame1
阅读框部分省略
阅读框部分省略
阅读框部分省略
3.比较氨基酸序列
在确定核苷酸序列中的ORF之后,就可以将核苷酸序列的蛋白质编码段转换为相应的氨基酸序列。
并使用比对功能来确定两序列的相似性。
3.1将ORF转换为氨基酸序列
mouseProtein=nt2aa(mouseHEXA);
由于人类的ORF在第一个阅读框,所以需要指出其位置
humanProtein=nt2aa(humanHEXA,'Frame',1);
3.2绘制散点图
比较人类和鼠类的氨基酸序列。
seqdotplot(humanProtein,mouseProtein,4,1)
ylabel('HumanhexosaminidaseA');
xlabel('MousehexosaminidaseA');
散点图是确定两序列相似性最简单的方法之一。
图中对角线平直连续,表示这两个序列相似性较好。
3.3比对这两个氨基酸序列
下面nwalign函数有目的地比对两序列。
采用的是Needleman-wunsch算法,可返回全局比对的计算统计量。
[globalscore,globalAlignment]=nwalign(humanProtein,mouseProtein)
showalignment(globalAlignment);
Identities=486/753(65%),Positives=570/753(76%)
3.4截短序列
寻找终点:
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%)
3.6局部比对两氨基酸序列
下面swalign函数有目的地比对两序列。
采用的是Smith-Waterman算法,可返回局部比对的计算统计量。
[localscore,localAlignment]=swalign(humanProtein,mouseProtein);
showalignment(localAlignment);
Identities=454/547(83%),Positives=514/547(94%)
作业
1.进入NCBI任意搜索两条细菌条斑病基因组序列(不同物种,搜索词为bacterialstreak),按照序列比对的步骤进行序列比对,进行如下操作并列出结果:
查找序列的开放阅读框,将核普酸序列转换为氨基酸序列,绘制比较两氨基酸序列的散点图,用Needleman-wunsch算法和Smith-Waterman算法进行比对,以及计算两序列的同一性。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验四 基于Matlab的序列比对分析325 实验 基于 Matlab 序列 分析 325