我正在使用R中的ape
包。我想要一个subtree
树中每个可能phylogenetic
的列表。我想要遍历子树列表并获得每个子树的根。我的问题是,是否为每个子树列出了第一个内部节点,即该子树的根?
一个例子可能会更好地说明我的问题。我创建了一个包含12个提示的随机树,然后提取子树。我已经复制了子树1的输出。然后,R为每个子树列出了一些内容,包括Node labels: 13, 14, ...
。节点标签(在本例中为节点13)中列出的第一个节点是否始终是子树的根?
phy = rtree(12)
st = subtrees(phy)
>st[[1]]
> st
[[1]]
Phylogenetic tree with 12 tips and 11 internal nodes.
Tip labels:
t12, t2, t10, t1, t9, t4, ...
Node labels:
13, 14, 15, 16, 17, 18, ...
Rooted; includes branch lengths.
答案 0 :(得分:1)
情况似乎如此。要进行验证,可以通过将树转换为data.tree结构来可视化树:
library(data.tree)
tr <- as.Node(phy)
print(tr)
这将显示为:
levelName
1 13
2 ¦--t7
3 °--14
4 ¦--15
5 ¦ ¦--t5
6 ¦ °--t6
7 °--16
8 ¦--17
9 ¦ ¦--18
10 ¦ ¦ ¦--19
11 ¦ ¦ ¦ ¦--20
12 ¦ ¦ ¦ ¦ ¦--t2
13 ¦ ¦ ¦ ¦ °--t9
14 ¦ ¦ ¦ °--t12
15 ¦ ¦ °--t4
16 ¦ °--21
17 ¦ ¦--22
18 ¦ ¦ ¦--t3
19 ¦ ¦ °--t1
20 ¦ °--23
21 ¦ ¦--t10
22 ¦ °--t11
23 °--t8