专题汇总
<一> 科学家发布生物进化与多组学综合分析软件
<二> eGPS开篇与使用示例一
背景——生物分析软件的使用心得
对于生物软件的使用者来说,一般都有如下的一个使用过程:
打开软件 、导入文件、设置参数、点击运行、输出文件
当然对于数据分析模块是这样的,如果是序列编辑、可视化与美化等处理的话,应该是:
打开软件 、导入文件、实时操作与查看、输出文件
我们遵循这样的软件过程来讲解eGPS的使用示例二。
目标与数据准备
如果说分子生物进化是进化上的一顶皇冠,那么重构进化树便是皇冠上一颗璀璨的宝石,闪耀着高贵迷人的光芒 。下面我们介绍距离法建进化树及相应基础知识。
假设你收集到了不同猿类的线粒体基因组序列,我们称这些序列为多重序列(Multiple sequences)。现在你想以这些序列为基础推断不同猿类的系统发育关系,也就是,这些猿类是如何进化而来的?人和他们的关系是怎么样的?
分子进化学提供了相应的方法论与工具来处理这个问题,并在一定程度上给出了解答。
下面我们尝试使用距离法来构建系统发育树,推断他们可能的进化关系。
原理与步骤
总体知识首先,我们用多重序列联配器对多重序列进行联配,以生成对位排列(或者叫做多序列联配,英文为 Multiple sequence alignment,简称为MSA,详细内容见使用示例一)。一般软件有MAFFT/ClustalW等。注意,多序列联配是动词,也是一个名词,MS与MSA的区别在于MSA是对位排列的,以‘-’gap补全。所以MSA有两个中文翻译,联配是说明了它的来源,对位排列说明了它的性质。
然后我们成对地计算两两之间的遗传或进化距离,形成一个对称的距离矩阵。一旦距离矩阵算好,多序列联配即不再需要,所以计算距离会比较重要。已经有很多的模型/方法来计算这个距离,从最简单的p距离(即差异的比例),到最复杂的UNREST模型。系统发育关系就以距离矩阵出发,以聚类的方式生成,常用的计算方法有NJ法,UPGMA法。
我们以后会出多序列联配、遗传距离、建树方法的数学原理与哲学思想的介绍。在一些方法中有个很有意思的 “先有鸡还是先有蛋的问题?”:也就是在联配的过程中我们需要一颗引导树(guided tree)来让这个对位排列更准确,但是在构树的时候我们又需要对位排列更准确。也就是说,计算对位排列的时候,我们需要一颗准确的树;但是在构树的时候,我们需要一个准确的对位排列。当然解决方法就是从一棵粗略的树出发。
具体的操作步骤
第一步当然是打开软件,我们选择官网上下载的测试数据 mtDNA.fa 作为例子。数据中包含不同猿类的线粒体DNA基因组。
本教程基于 eGPS v 1.0.2版本!
形成联配
注意,这个测试数据形成了对位排列,为了演示这个步骤。我们选用一个未联配的fasta文件。
导入数据:通过工具栏的导入按钮将数据导入,或者直接拖入数据文件。此时 suitable methods 区域显示Alignment按钮,点击进入联配模块。
设置参数:默认参数。
点击运行:点击 Align sequences 按钮。运行完成之后,结果显示在Alignment viewer模块中。
保存结果:点击工具栏总的另存为按钮,或者菜单栏File中的另存为按钮。可选择fasta格式,此文件即为对位排列。
计算距离矩阵
导入数据:通过工具栏的导入按钮将数据导入,或者直接拖入数据文件。此时 suitable methods 区域显示Build tree/View alignment/Calculate distance按钮。
设置参数:默认参数,或者 Option -> Preferences ->Genetic distance,选择其他的遗传距离。
点击运行:点击Calculate distance进入模块。
保存结果:点击工具栏总的另存为按钮,或者菜单栏File中的另存为按钮。可选择DIST格式,此文件为距离矩阵的文本格式。
重构系统发育树
导入数据:通过工具栏的导入按钮将数据导入,或者直接拖入上面的 dist 结尾的数据文件。此时 suitable methods 区域显示Build tree/View distance matrix按钮。
设置参数:默认参数,或者 Option -> Preferences ->Genetic distance,选择其他的构树方法。
点击运行:点击Build tree进入模块。
保存结果:点击工具栏总的另存为按钮,或者菜单栏File中的另存为按钮。可选择nwk格式。
一气呵成——连贯的数据分析流程体验
eGPS的一个特性在于,它可以给用户一个连贯的数据分析流程体验。
导入数据:通过工具栏的导入按钮将数据导入,或者直接拖入数据文件。此时 suitable methods 区域显示Alignment按钮,点击进入联配模块。
设置参数:默认参数,或者 **Option -> Preferences **,设置各种不同参数。
点击运行:一开始点击 Align sequences 按钮,然后在 Further analysis 栏目中一次点击calculate distance与Build tree,效果如图。
保存最终结果:同上。
一些可能的问题
1.方法模型怎么选?
一般我们分析数据的话,最难也最尴尬的是参数与模型怎么选择,在这里比如遗传距离与建树方法(单单 距离法)。
一般在进化上面,没有一定的定论说,简单模型一定比复杂模型好。我们也可以通过AIC,BIC,LRT等选择模型,这个我们后面再谈。
2.标准的建树流程?
那这样一套建树流程,不是我随便来一堆数据,我都能建树,那如何评价好与不好?
确实这是一个问题,我们后面再谈,敬请期待后面的推文。
参考书籍
- 李文雄等,《Fundamentals of molecular evolution》 second edition。
- 杨子恒等,《计算分子进化》。
网友评论