分子鐘假說
基因序列中密碼子隨著時(shí)間的推移以幾乎恒定的比例相互替換,即具有恒定的演化速率,兩個(gè)物種之間的遺傳距離將與物種的分化時(shí)間成正比。我們通常采用單拷貝基因家族中的四重簡(jiǎn)并位點(diǎn)來估算分子鐘(替換速率)以及物種間的分化時(shí)間,密碼子中的四重簡(jiǎn)并位點(diǎn)由于第三堿基不改變所編碼的氨基酸屬于中性進(jìn)化,其中中性替換速率一般用每個(gè)位點(diǎn)每年的變異數(shù)來衡量。
- 分子鐘應(yīng)當(dāng)被看作是氨基酸或核苷酸突變的隨機(jī)性所導(dǎo)致的隨機(jī)鐘
- 分子鐘假說允許不同蛋白質(zhì)間進(jìn)化速率不同,以不同的速率跳動(dòng)
- 速率恒定性未必對(duì)所有物種適用
全局分子鐘模型:序列間的期望距離隨分歧時(shí)間線性增加。
局部分子鐘模型:對(duì)分支賦予不同的進(jìn)化速率
常用軟件:

image.png
分析實(shí)操
使用軟件:PAML 軟件包中的mcmctree 工具
準(zhǔn)備文件:
- 多序列比對(duì)文件,Phylip 格式
- 有化石時(shí)間標(biāo)定的進(jìn)化樹
- mcmctree 配置文件
使用氨基酸序列進(jìn)行估計(jì),使用orthofinder 的進(jìn)化樹及單拷貝基因數(shù)據(jù)做輸入。
#將orthofinder的進(jìn)化樹SpeciesTree_rooted.txt和多序列比對(duì)結(jié)果SpeciesTreeAlignment.fa拷貝過來
#重命名
mv SpeciesTree_rooted.txt input.tree
#fasta格式轉(zhuǎn)phylip格式
trimal -in SpeciesTreeAlignment.fa -out Sequence.phy -phylip_paml
step1 估算位點(diǎn)替換率
mcmctree mcmctree.ctl
- mcmctree.ctl 配置文件
seed = -1
seqfile = ./Sequence.phy
treefile = ./input.tree
outfile = out
ndata = 1
seqtype = 2 * 0: nucleotides; 1:codons; 2:AAs
usedata = 3 * 0: no data; 1:seq like; 2:use in.BV; 3: out.BV
clock = 3 * 1: global clock; 2: independent rates; 3: correlated rates
RootAge = <1.0 * safe constraint on root age, used if no fossil for root.
model = 0 * 0:JC69, 1:K80, 2:F81, 3:F84, 4:HKY85
alpha = 0 * alpha for gamma rates at sites
ncatG = 5 * No. categories in discrete gamma
cleandata = 0 * remove sites with ambiguity data (1:yes, 0:no)?
BDparas = 1 1 0 * birth, death, sampling
kappa_gamma = 6 2 * gamma prior for kappa
alpha_gamma = 1 1 * gamma prior for alpha
rgene_gamma = 2 2 * gamma prior for overall rates for genes
sigma2_gamma = 1 10 * gamma prior for sigma^2 (for clock=2 or 3)
finetune = 1: 0.1 0.1 0.1 0.01 .5 * auto (0 or 1) : times, musigma2, rates, mixing, paras, FossilErr
print = 1
burnin = 2000
sampfreq = 2
nsample = 20000
將生成的tmp0001.trees文件進(jìn)行修改,定根(添加一對(duì)括號(hào)即可),添加化石時(shí)間
修改生成的tmp0001.ctl文件為
seqfile = tmp0001.txt
treefile = tmp0001.trees
outfile = tmp0001.out
noisy = 3
seqtype = 2
model = 0
Small_Diff = 0.1e-6
getSE = 0
method = 1
clock = 1
再次運(yùn)行
codeml tmp0001.ctl
step2 使用近似似然法計(jì)算分化時(shí)間
#調(diào)整mcmctree.ctl 中的rgene_gamma 第二個(gè)參數(shù)b, 使得a/b 約等于s上一步tmp0001.out文件得到的替換率, 將usedata 設(shè)置為3 再運(yùn)行
mcmctree mcmctree.ctl
# 將生成的out.BV 文件重命名成 in.BV
mv out.BV in.BV
# 將mcmctree.ctl配置文件usedata 設(shè)置為2 ,運(yùn)行mcmctree
mcmctree mcmctree.ctl
- 結(jié)果文件FigTree.tre
