Python构建系统发生树,以冠状病毒基因组序列为例(COVID-19,SARS,MERS,EBOLA),最大似然估计法(ML)

这篇博客介绍了如何利用Python构建系统发生树,特别是针对冠状病毒(COVID-19,SARS,MERS,EBOLA)的基因组序列,重点讨论了最大似然估计法(ML)。内容涵盖了系统发生树的定义、分类、构建方法,以及选择不同序列建树的条件,并给出了实际的序列示例和对齐、建树的步骤。
摘要由CSDN通过智能技术生成

系统发生树

定义

系统发生树(phylogenetic tree)是表明被认为具有共同祖先的各物种相互间演化关系的树

分类

  • 是否有根?
    - 有根树:具有方向的树
    - 无根树:没有方向,其中线段的两个演化方向都有可能
  • 基因树和物种树

构建方法

计算的精度和时间均依次增大

  • 非加权分组平均法:UPGAM(Unweighted pair group method with arithmetic mean)
  • 矩阵法:邻接法 neighbor-joining (NJ)
  • 简约法:最大简约法 maximum parsimony (MP)
  • 似然法:最大似然法 maximum likelihood (ML)
  • 后验概率法:贝叶斯法 Bayesian

用什么序列建树?

  • 如果DNA序列两两间一致度大于70%,选用DNA序列
  • 低于70%选用蛋白质序列或DNA序列

What is the difference between a guide tree and a true phylogenetic tree?

A guide tree is calculated based on the distance matrix that is generated from the pairwise scores. The output can be found in the .dnd file. A phylogenetic tree is calculated based on the multiple alignment that it receives. The distances between the sequences in the alignment are calculated and can be found in the .ph file. These distances are then used by the method chosen (nj, phylip, dist) to make the phylogenetic tree (.nj, .ph, .dst file).

from Bio import SeqIO
## 读入序列数据

covid = SeqIO.read('data/covid19.fasta', 'fasta')
sars = SeqIO.read('data/sars.fasta', 'fasta')
mers = SeqIO.read('data/mers.fasta', 'fasta')
ebola =
  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值