估计阅读时长: < 1 分钟

UPGMA(Unweighted Pair Group Method with Arithmetic Mean,非加权配对组平均法)是一种经典的基于距离矩阵构建系统发育树的聚类算法。其核心思想是假设进化速率恒定(分子钟假说),通过迭代合并距离最近的两个类群(或序列)来构建树。UPGMA算法具有原理简单,计算速度快,易于理解和实现。对于符合分子钟假说(即所有分支进化速率相同)的数据,能给出正确的拓扑结构这些优点。但是其“进化速率恒定”的假设在现实中常常不成立。如果数据存在明显的速率差异(即存在长枝),UPGMA可能会构建出错误的树(拓扑结构错误)。因此,它更适用于进化速率相对均匀的近缘物种或基因的比较。

UPGMA构建进化树的主要步骤包括有下面的几个计算步骤:

  1. 计算距离矩阵:首先,根据所有序列(或物种)之间的两两比对,计算出一个完整的距离矩阵(如p距离、Jukes-Cantor距离等)。
  2. 寻找并合并最近对:在距离矩阵中找到距离最小的两个类群(初始时每个类群是一个单独的序列/物种),将它们合并为一个新的复合类群(节点)。
  3. 计算新距离矩阵:重新计算这个新复合类群与矩阵中所有其他类群之间的距离。UPGMA采用算术平均法计算新距离。假设新合并的节点 U 由类群 A 和 B 合并而成,那么 U 到另一个类群 C 的距离为:d(U,C) = [d(A,C) + d(B,C)] / 2 即取平均值。用这个新距离更新矩阵。
  4. 迭代与建树:重复步骤2和3,每次合并距离最近的两个类群(可以是单一类群或复合类群),并在树上标注分支长度(分支长度等于该节点被合并时,其两个子类群之间距离的一半)。直到所有类群都被合并成一个根节点,树即构建完成。

如果我们观察上面的计算过程中的第二个和第三个步骤,就会发现,上面的UPGMA构建进化树的算法起始就是一个计算平均距离加权的层次聚类树的构建过程

谢桂纲
Latest posts by 谢桂纲 (see all)

No responses yet

Leave a Reply

Your email address will not be published. Required fields are marked *

博客文章
February 2026
S M T W T F S
1234567
891011121314
15161718192021
22232425262728
  1. […] 最近的工作中我需要按照之前的这篇博客文章《基因组功能注释(EC Number)的向量化嵌入》中所描述的流程,将好几十万个微生物基因组的功能蛋白进行酶编号的比对注释,然后基于注释结果进行向量化嵌入然后进行数据可视化。通过R#脚本对这些微生物基因组的蛋白fasta序列的提取操作,最终得到了一个大约是58GB的蛋白序列。然后将这个比较大型的蛋白序列比对到自己所收集到的ec number注释的蛋白序列参考数据库之上。 […]