分享

进化树分析

 xiaoshuangshuang 2013-09-05

大家好:

我在此介绍几个进化树分析及其相关软件的使用和应用范围。这几个软件分别是PHYLIPPUZZLEPAUPTREEVIEWCLUSTALXPHYLO-WINLINUX)。

在介绍软件之前,我先简要地叙述一下有关进化树分析的一些方法学问题。

进化树也称种系树,英文名叫“Phyligenetic tree”。对于一个完整的进化树分析需要以下几个步骤: 要对所分析的多序列目标进行排列(To align sequences)。做ALIGNMENT的软件很多,最经常使用的有CLUSTALXCLUSTALW,前者是在WINDOW下的而后者是在DOS下的。 要构建一个进化树(To reconstrut phyligenetic tree)。构建进化树的算法主要分为两类:独立元素法(discrete character methods)和距离依靠法(distance methods)。所谓独立元素法是指进化树的拓扑形状是由序列上的每个碱基/氨基酸的状态决定的(例如:一个序列上可能包含很多的酶切位点,而每个酶切位点的存在与否是由几个碱基的状态决定的,也就是说一个序列碱基的状态决定着它的酶切位点状态,当多个序列进行进化树分析时,进化树的拓扑形状也就由这些碱基的状态决定了)。而距离依靠法是指进化树的拓扑形状由两两序列的进化距离决定的。进化树枝条的长度代表着进化距离。独立元素法包括最大简约性法(Maximum Parsimony methods)和最大可能性法(Maximum Likelihood methods);距离依靠法包括除权配对法(UPGMAM)和邻位相连法(Neighbor-joining)。 对进化树进行评估。主要采用Bootstraping法。进化树的构建是一个统计学问题。我们所构建出来的进化树只是对真实的进化关系的评估或者模拟。如果我们采用了一个适当的方法,那么所构建的进化树就会接近真实的进化树。模拟的进化树需要一种数学方法来对其进行评估。不同的算法有不同的适用目标。一般来说,最大简约性法适用于符合以下条件的多序列:i 所要比较的序列的碱基差别小,ii 对于序列上的每一个碱基有近似相等的变异率,iii 没有过多的颠换/转换的倾向,iv 所检验的序列的碱基数目较多(大于几千个碱基);用最大可能性法分析序列则不需以上的诸多条件,但是此种方法计算极其耗时。如果分析的序列较多,有可能要花上几天的时间才能计算完毕。UPGMAMUnweighted pair group method with arithmetic mean)假设在进化过程中所有核苷酸/氨基酸都有相同的变异率,也就是存在着一个分子钟。这种算法得到的进化树相对来说不是很准确,现在已经很少使用。邻位相连法是一个经常被使用的算法,它构建的进化树相对准确,而且计算快捷。其缺点是序列上的所有位点都被同等对待,而且,所分析的序列的进化距离不能太大。另外,需要特别指出的是对于一些特定多序列对象来说可能没有任何一个现存算法非常适合它。最好是我们来发展一个更好的算法来解决它。但无疑这是非常难的。我想如果有人能建立这样一个算法的话,那他(她)完全可以在Proc.Natl.Acad.Sci.USA.上发一篇高质量的文章。

   下面介绍几个软件的使用。首先是PHYLIP。其是多个软件的压缩包,下载后双击则自动解压。当你解压后就挥发现PHYLIP的功能极其强大,主要包括五个方面的功能软件:iDNA和蛋白质序列数据的分析软件。ii,序列数据转变成距离数据后,对距离数据分析的软件。 iii,对基因频率和连续的元素分析的软件。iv,把序列的每个碱基/氨基酸独立看待(碱基/氨基酸只有01的状态)时,对序列进行分析的软件。v,按照DOLLO简约性算法对序列进行分析的软件。vi,绘制和修改进化树的软件。在此,我主要对前两种功能软件进行说明。

   我们现在有几个序列如下:

Mo3       ATGTATTTCGTACATTACTGCCAGCCACCATGAATATTGCACGGTACCAT

Mo5       ATGTATTTCGTACATTACTGCCAGCCACCATGAATATTGTACGGTACCAT

Mo6       ATGTATTTCGTACATTACTGCCAGCCACCATGAATATTGTACGGTACCAT

Mo7       ATGTATTTCGTACATTACTGCCAGCCACCATGAATATTGTACAGTACCAT

Mo8       ATGTATTTCGTACATTACTGCCAGCCACCATGAATATTGTACAGTACCAT

Mo9       ATGTATCTCGTACATTACTGCCAGCCACCATGAATATTGTACGGTACCAT

Mo12      ATGTATTTCGTACATTACTG CCAGCCACCATGAATATTGTACGGTACCAT

Mo13      ATGTATCTCGTACATTACTGCCAGCCACCATGAATATTGTACGGTACCAT

要对这8个序列进行进化树分析,按照上面的步骤,首先用CLUSTALX排列序列,输出格式为 *.PHY。用记事本打开如下图:

图中的850分别表示8个序列和每个序列有50个碱基。然后,打开软件SEQBOOT,如下图:

按路径输入刚才生成的 *.PHY文件,并在Random number seed (must be odd) ?的下面输入一个4N+1的数字后,屏幕显示如下:

图中的DJRIO12代表可选择的选项,键入这些字母,程序的条件就会发生改变。D选项无须改变。J选项有三种条件可以选择,分别是BootstrapJackknifePermute。文章上面提到用Bootstraping法对进化树进行评估,所谓Bootstraping法就是从整个序列的碱基(氨基酸)中任意选取一半,剩下的一半序列随机补齐组成一个新的序列。这样,一个序列就可以变成了许多序列。一个多序列组也就可以变成许多个多序列组。根据某种算法(最大简约性法、最大可能性法、除权配对法或邻位相连法)每个多序列组都可以生成一个进化树。将生成的许多进化树进行比较,按照多数规则(majority-rule)我们就会得到一个最逼真的进化树。Jackknife则是另外一种随机选取序列的方法。它与Bootstrap法的区别是不将剩下的一半序列补齐,只生成一个缩短了一半的新序列。Permute是另外一种取样方法,其目的与BootstrapJackknife法不同,这里不再介绍。R选项让使用者输入republicate的数目。所谓republicate就是用Bootstrap法生成的一个多序列组。根据多序列中所含的序列的数目的不同可以选取不同的republicate。当我们设置好条件后,键入Y按回车。得到一个文件outfile

Outfile用记事本打开如下:

这个文件包括了100republicate

打开DNAPARS(最大简约性法)或DNAML(最大可能性法)软件。将刚才生成的outfile文件更名后输入。如下图:

选项O是让使用者设定一个序列作为outgroup。一般选择一个亲缘关系与所分析序列组很接近的序列作为outgroup(本例子不选outgroup),outgroup选择的好坏将直接影响到最后的进化树的好坏。选项M是输入刚才设置的republicate的数目。设置好条件后,键入Y按回车。生成两个文件outfiletreefile

Outfile打开如下图:

该文件包括了227个进化树。Treefile可以用TREEVIEW软件打开同样包含了这227个进化树。

打开CONSENSE软件,将刚才生成的treefile文件更名后输入。如下图:

 

键入Y按回车。生成两个文件outfiletreefileTreefileTREEVIEW打开,如下图:

Outfile打开如下图:

我们看出两个树是同样的。但在outfile的树上的数字表示该枝条的Bootstrap支持率(除以100.6)。到现在,8个序列的进化树分析(最大简约法)已经完成。

  如果要用邻位相连法对这8个序列进行分析的话,也首先执行SEQBOOT软件将这8个序列变成100republicate。然后,打开DNADIST软件,把SEQBOOT生成的文件输入,如下图:

选项D有四种距离模式可以选择,分别是Kimura 2-parameterJin/NeiMaximum-likelihoodJukes-Cantor。选项T一般键入一个15-30之间的数字。选项M键入100。运行后生成文件如下图:

这个文件包含了与输入文件相同的100republicate,只不过每个republicate是以两两序列的进化距离来表示。文件中的每个republicate都省略了第一排的Mo3 Mo5  Mo6  Mo7  Mo8  Mo9  Mo12  Mo13。以这个输出文件为输入文件,执行NEIGHBOR软件。如下图:

选项M键入100。生成两个文件outfiletreefile用记事本和TREEVIEW打开后,发现这两个文件都含有100个进化树。再将treefile文件更名后输入CONSENSE软件,又得到两个文件outfiletreefile,这就是最后的结果。以上是对DNA序列的分析,如果要对蛋白质序列进行分析,PROTDISTPROTPARS等软件。其他软件的用法可以参照PHYLIPdocuments

下面介绍PUZZLE软件。它是用最大可能性的方法来构建进化树的一个软件,并且对树进行bootstrap评估。该软件搜寻进化树时用的算法是quartet puzzling,这个算法相对较快,但如要分析的序列较多时,也相当耗时。另有LINUX版,运行起来相对较快。PUZZLE的输入格式为PHYLIP INTERLEAVEDCLUSTAL可以生成此格式文件。PUZZLE的界面与PHYLIP类似,也是MS-DOS下的软件。

PHYLO-WINLINUX下的一个软件。界面友好,极易操作。该界面如下图:

 

Puzzle:  http//:www.tree-puzzle.de

Phylo-win:  http//:www.evolution.bmc.uu.se

PhylipTreeview and Clustalx:  http//:biosoft.yeah.net

 

 

一、获取序列
一般自己通过测序得到一段序列(已知或未知的都可以),通过NCBIBLAST获取相似性较高的一组序列,下载保存为FASTA格式。用BIOEDIT等软件编辑序列名称,注意PHYLIPDOS下运行,文件名不能超过10位,超过的会自动截留前面10位。
二、多序列比对
目前一般应用CLASTAL X进行,注意输出格式选用PHY格式。生成的指导树文件(DND文件)可以直接用TREEVIEW打开编辑,形式上和最终生成的进化树类似,但是注意不是真正的进化树。
三、构建进化树
1.N-J
法建树
依次应用PHYLIP软件中的SEQBOOT.EXEDNADIST.EXENEIGHBOR.EXECONSENSE.EXE打开。具体步骤如下:
1)打开seqboot.exe
输入文件名:输入你用CLASTAL X生成的PHY文件(*.phy)。
R
bootstrap的次数,一般为1000 (设你输入的值为M,即下两步DNADIST.EXENEIGHBOR.EXE中的M值也为1000
odd number: (4N+1)(eg: 1
59…)
改好了y
得到outfile(在phylip文件夹内)
改名为2
2)打开Dnadist.EXE
输入2
修改M值,再按D,然后输入1000M值)
y
得到outfile(在phylip文件夹内)
改名为
3)打开Neighboor.EXE
输入3
M=1000
M值)
Y
得到outfileouttree(在phylip文件夹内)
outtree4outfile改为402
(4)
打开consense.exe
输入4
y
得到outfileouttree(在phylip文件夹内)
Outfile
可以改为*.txt文件,用记事本打开阅读。
四、进化树编辑和阅读
outtree
可改为*.tre文件,直接双击在treeview里看;也可以不改文件扩展名,直接用treeviewPHYLODRAWNJPLOT等软件打开编辑。TREEVIEW可以显示BOOTSTRAN值,序列较多(60条以上)的时候打开直接显示有明显的重叠,可以在打印预览中显示,或输出为EMF WMF图片文件看,但是序列较多时BOOTSTRAN值的显示位置比较乱,和序列名称有重叠。
PHYLODRAW
的编辑功能较强,可以自由调节XY轴的长度。输出格式为BMPPS格式。缺点是不能直接显示BOOTSTRAN值,包括打开TREEVIEW输出的NEX文件,而且输出的BMP文件不全,类似截屏文件,我用PHOTOSHOP进行拼接合成,添加BOOTSTRAN值和注解符号等。据说也可以将PS文件用记事本打开,改变其中的字号,然后通过ADOBE DISTRILLORPS转化为PDF,就可以解决问题。如果发现还有重叠,可以再次改变PS文件中的字号大小,直到合适为止。 

NJPLOT
可以显示BOOTSTRAN值和分值长度。但是不能调节图片XY轴的长度。

MP,ML树将DnadistNeighboot两步分别改为DnaparsDnaml,其余步骤相同。据说ML法序列较多是非常耗时,我没有尝试。因为我的序列较多。

也可以用CLASTAL X中的BOOTSTRAN N-J TREE法生成进化树,TREE菜单输出格式选项(OUTPUT FORMAT OPTION)中的BOOTSTRAN LABELS ON NODE(节点)。在treeview里,选择tree菜单 ,然后把show internal edge lables 的选项打勾了,直接打开生成的文件bootstrap的值就可以显示出来。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多