PAML discussion group
Hi PAML Users,
Welcome to the PAML discussion group. This site is for posting questions and discussions of the PAML software package. PAML stands for Phylogenetic Analysis by Maximum Likelihood.
----Ziheng
PAML是一个用最大似然法来对DNA和蛋白质序列进行系统发育分析的软件包,此软件由杨子恒教授开发,最新版本为v. 4.9h。
此笔记主要用于记录PAML分析中遇到的一些问题,并长期更新。
PAML主页
PAML手册
PAML FAQs
PAML discussion group
1. PAML可以做什么?
- 系统发育树的检测与比较;
- 复杂替代模型中参数的估计,包括位点间变化率模型,多基因联合分析或位点分区模型;
- 对不同假设模型进行似然率假设性检验;
- 基于全局或局部分子钟模型估算分歧时间;
- 使用核酸,氨基酸和密码子模型重构祖先序列;
- 用Monte Carlo模拟生成核酸,密码子和氨基酸序列数据集;
- 估算同义和非同义替代率和发现蛋白编码DNA序列中的正选择;
- 贝叶斯估算物种的分歧时间来合并化石尺度上的不确定性;
2. 有根树与无根树
- 当clock = 0时,应该使用无根树,如((1,2),3,4) 或 (1,2,(3,4));
- 当clock = 1/2时,应该使用有根树,如(((1,2),3),4);
3. 标记前景枝$1与#1的区别
对于一个大的树,你可能想标记一个进化枝内全部分枝。出于这个目的,你可以使用进化枝标签$。
(((rabbit, rat) $1, human), goat_cow, marsupial);
(((rabbit #1, rat #1) #1, human), goat_cow, marsupial);
上面的两个例子其实是等同的,因此$1可以标记一个大的分支,包括了其祖先节点以及现生物种节点,而#1仅仅是表示末端枝或者祖先枝。
这里有一些关于嵌套进化枝标签的规律。符号#的优先级高于$,树顶端的进化枝标签优先于接近根处的祖先节点的进化枝标签。下面的两棵树也是一样。第一个树中$1适用于整个胎盘哺乳动物的进化枝(除人类世系外),$2适用于兔与鼠的进化枝。
((((rabbit, rat) $2, human #3), goat_cow) $1, marsupial);
((((rabbit #2, rat #2) #2, human #3) #1, goat_cow #1) #1, marsupial);
注意,使用这个规律,你是否使用$0可能会有些不同。例如
((a, b) $0, (c, d)) $1;
((a, b), (c, d)) $1;
#0标记了左侧的三个枝(a,b,以及a和b)而其它枝为#1。虽然#1是针对树中的所有分支的。
我发现使用Rod page (1996)的TreeView软件可以很方便的创建树文件并且检查树和标签是否正确。上面作为例子的树都可以被TreeView识别。在TreeView X中,你必须使用单引号来标记。如下:
((((rabbit '#2', rat '#2') '#2', human '#3') '#1', goat_cow '#1') '#1', marsupial);
4. 可以同时标注几个不同分支
例如: (((a #1, b) c #1 d) e)
5. 基因复制
https://groups.google.com/forum/#!topic/pamlsoftware/5-5EfkSOFAo
某一基因,在脊椎动物祖先发生了基因复制,然后分化为A,B两个不同支系。其中,在谱系A中GC含量较低,而在谱系B中含量较高。通过正选择检测,发现在谱系A的祖先,哺乳动物祖先以及任何一个谱系B中均发现了正选择信号,有没有必要对第三位密码子进行饱和性检验。
6. ω = 999
遇到这种极大值的dN/dS时,首先要确保你的序列是否正确;其次,该位置的dn,ds是否远小于0.0001;最后,如果这两个情况都没问题,那么ω=999也是正常的。杨子恒教授给予了回答,我们应该关注于LRT检验。
7. 支模型中的正选择分支在分支站点模型中也应该是正选择的
如果two-ratio模型显著优于one-ratio模型,此外还要用two-ratio与null-two-ratio进行显著性比较(fix_omega = 1 omega = 1)。详细介绍
8. p2=0,结果不可信
9. 树的拓扑结构不会对结果产生太多影响
一般如果是仅分析几个基因的时候,我们可以同时用物种树以及基因树进行分析;如果是大数据的话,一般采用物种树即可。
10. 不同模型下的起始ω
针对于CladeC和CladeD模型,一般要设置几个不同的起始ω,测试其lnL值是否稳定(ω=0.001,ω=0.01,ω=0.1,ω=0.5,ω=1,ω=2,ω=5);其他模型,我们可以在同一起始值,多进行几次测试即可。
11. CladeC模型可以检测独立地末端枝
一般Clade模型是用来检测,某一枝系的分化选择的,它也可以用了检测独立的某一个物种的进化速率。
12. 枝长会影响PAML结果
正常分析,应该先用M0估计树的枝长,Kappa值,然后用跑出来的树作为初始树,并设置fix_blength = 2。
13. 祖先节点有正选择信号而整个枝系却没有检测到如何解释
如果以哺乳动物祖先为前景,假设该基因在共同祖先中存在适应性,可能是由于获得了新的功能,但随后该基因在净化选择下得到了保守进化。如果你把整个clade作为前景,那么假设该基因在整个哺乳动物中的所有分支都承受着持续的压力来改变或多样化,如果该基因涉及到防御或免疫,则可能是这种情况。
对于到底是检测祖先,还是整个枝系,取决于生物学问题。例如在溶菌酶的例子中,该酶在所有colobine猴子中都应该具有相同的功能,因此蛋白质在clade内被期望受到选择性约束,但在colobine clade的分支上,该酶显然获得了一个新的功能,其正选择驱动了氨基酸的变化。有了这个假设,你就应该把分支的祖先贴上clade的标签,而不是那些在clade中的分支。
14. 基因家族选择压力分析
https://groups.google.com/forum/#!topic/pamlsoftware/bsfGWYHPCgA
https://groups.google.com/forum/#!topic/pamlsoftware/KqhrPFYnWMI
15. CladeC检测正选择
CladeC经常用于检测,不同分支的分化选择压力,但有时候检测到前景枝dN/dS>1,此时我们需要进一步利用CladeC的零假设进一步测试(fix_omega=1,omega=1),或者利用branch-site进一步验证一致性。
16. Free ratio不能检验正选择
17. 使用基因树or物种树
18. 终止密码子
https://groups.google.com/forum/#!topic/pamlsoftware/gJWSbv3cVPI
19. PGLS分析要使用two-ratio
20. dS>5饱和度
21. CladeC模型
在dataset中,有三个clade:A, B, C,那么我最感兴趣的是,在clade 1和clade 2之间是否存在分化的选择,该如何分析。
假设,前景枝的标注如下所示:
((A1,A2)$1 , (B1,B2)$2 , (C1,C2)$0);
首先,为了测试clades之间的显着差异,您可以比较CladeC与M2a_rel。M2a_rel假设2、$0等都是在相同的选择压力下进化的,这个测试应该有两个自由度。
其次,为了测试clade A和B之间的显着差异,同时允许clade C是不同的,您可以比较使用上面提供的树运行CMC与使用更简单的树运行CMC的契合程度。在这种情况下,更简单的树会将clade A和B分配给同一个组,这个测试应该有一个自由度。如下所示:
(A1,a2)$1,(b1,b2)$1,(c1,c2)$0);