skbio.tree.TreeNode.assign_supports

TreeNode.assign_supports()[源代码]

从树的内部节点标签中提取支持值。

状态:从0.5.6开始实验。

备注

“支持值”度量树中内部节点的传入分支(从父节点到自身的分支)的置信度或频率。根和尖端没有支持值。要从节点标签中提取支持值,此方法从左开始读取,并在第一个“:”(如果有)处停止,并尝试将其转换为数字。

例如:“(a,b)1.0”,“(a,b)1.0:2.5”和“(a,b)”1.0:物种“a”。在这些情况下,支持值都是1.0。

例如:“(a,b):1.0”和“(a,b)物种_a”。在这些情况下,没有支持值。

如果成功提取支持值,它将从节点标签中剥离并分配给 support 财产。

要点:从数学上讲,“支持值”是分支的属性,而不是节点的属性。由于历史原因,支持值通常附加到典型树文件中的节点 [1] .

[1] 捷克人、卢卡斯、杰米·胡尔塔·塞帕斯和亚历山德罗斯·斯塔马塔基斯。”A

树木观察者和生物信息学工具包中支持值使用的批判性评论〉《分子生物学与进化》34.6(2017):1535-1542。

示例

>>> from skbio import TreeNode
>>> newick = "((a,b)95,(c,d):1.1,(e,f)'80:speciesA':1.0);"
>>> tree = TreeNode.read([newick])
>>> tree.assign_supports()
>>> tree.lca(['a', 'b']).support
95
>>> tree.lca(['c', 'd']).support is None
True
>>> tree.lca(['e', 'f']).support
80
>>> tree.lca(['e', 'f']).name
'speciesA'