分享

Newick: tree文件格式简介

 生信修炼手册 2019-12-24

Newick 是最常见的进化树文件格式,了解这种格式之前,有必要先掌握树状结构的构成。首先来看一个tree的示例

对于一棵树而言,其节点可以分成三类

  1. root node

  2. internal nodes

  3. leaf nodes

在上述示例中,一共有A-F共6个节点。其中A-D, 通常称之为叶子节点leaf nodes, 叶子节点往下在没有其他的节点了; E称之为内部节点internal nodes,往下还有其他的节点;F称之为根节点root node,  是整个树中所有节点的公共祖先。

所有节点之间存在了层级关系,A,B,E这3个节点直接和根节点F相连,是树状结构中的第一层,CDE相连,是树状结构中的第二层。位于同一层级的节点,互称为同胞节点sliding nodes; 层级关系中位于上一层的节点,称之为父节点parent node,比如E就是CD的父节点; 类似的,CD称为E的子节点child node

树状结构中,除了节点外,还包括了分支 branch, 分支长度是非常重要的属性。比对从根节点F到叶子节点A的分支长度为0.1, 到叶子节点B的长度为0.2。

当我们表示一个树状结构时,本质上是表示节点和分支的信息。对于newick这种格式,采用圆括号将同胞节点括起来,多个节点之间用逗号相连,比如A和B表示为

(A,B)

对于父节点,直接写在子节点圆括号的外面,比如C,D, E 表示为

(C,D)E

通过圆括号的嵌套区分不同层级,然后就可以表示出一个完整的树,上述的tree表示为

(A,B, (C,D)E)F

上述的表示方式缺少了分支的信息,对于分支的信息,将其当做节点的属性来表示,和节点的名称之间用冒号:分割,比如A:0.1。当加上分支信息后,上面的tree表示为

(A:0.1,B:0.2,(C:0.3, D:0.4)E:0.5)F

这种表示方式涵盖了tree文件中所有的信息,但是在实际使用中,我们通常更关注叶子节点,内部结点只是用来呈现tree的层级结构,其名称并不是很重要。同时根节点也可以忽略不显示,所以上述tree可以表示为

(A:0.1,B:0.2,(C:0.3, D:0.4):0.5)

·end·

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多