首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >树中关系最密切的树叶(ete3包)

树中关系最密切的树叶(ete3包)
EN

Stack Overflow用户
提问于 2020-02-28 22:25:46
回答 1查看 31关注 0票数 0

您好,我有一棵树,例如:

代码语言:javascript
复制
>>> print(tree)

   /-A
--|
  |   /-B
   \-|
     |   /-C
      \-|
        |   /-D
         \-|
            \-E

 tree=Tree("(A,(B,C,(D,E)));") (ete3 function)

我正在寻找一种方法来查看与特定叶子最接近的叶子。

例如,这里与C关系最密切的叶子是DE.,与D关系最密切的叶子是E,与B关系最密切的叶子是C, DE.

EN

回答 1

Stack Overflow用户

发布于 2020-03-30 00:44:32

在这种情况下,“最接近”的定义很棘手,但您所描述的内容可以通过以下代码轻松实现(请注意,代码中的树缺少一个括号):

代码语言:javascript
复制
In [1]: from ete3 import Tree
   ...:
   ...: tree=Tree("(A,(B,(C,(D,E))));")
   ...: c_node  = tree & 'C'
   ...: for sister_node in c_node.get_sisters(): # there might be multifurcations therefore the loop
   ...:     print(sister_node.get_leaf_names())
   ...:
['D', 'E']
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60453697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档