python 进化树_【ROSALIND】【练Python,学生信】48 Newick格式与进化树

本博客探讨了如何使用Python处理Newick格式的进化树,包括从Newick格式中计算两个节点间的距离。文章提供了两种方法,一种是利用Biopython的Phylo模块,另一种是通过理解括号和逗号的含义手动解析。文中还介绍了进化树在生物学中的应用,并给出了具体的代码示例。
摘要由CSDN通过智能技术生成

题目:

Newick格式与进化树结点间的距离(Distances in Trees)

Given: A collection of n trees (n≤40) in Newick format, with each tree containing at most 200 nodes; each tree Tk is followed by a pair of nodes xk and yk in Tk.

所给:n个(不超过40个)以Newick格式表示的进化树,每棵树包含的结点不超过200个;所给文件的形式为一棵树Tk,后面跟随着这棵树中的一对结点xk和yk。

Return: A collection of n positive integers, for which the kth integer represents the distance between xk and yk in Tk.

需得:n个正整数,分别代表xk和yk在Tk内的距离。

测试数据

(cat)dog;

dog cat

(dog,cat);

dog cat

测试输出

1 2

生物学背景

进化树是在生物学中用来表示物种之间进化关系的图。进化树上每个叶子结点代表一个物种,叶子结点之间的距离可以代表两个物种之间的差异程度。

Newick是最常见的进化树文件格式。举例来说,假如n个叶子结点{v1, v2, … ,vn}都和一个内结点u相连,如下图:

用Newick格式可表示为(v1,v2,…,v3)u。Newick格式中结点名称并非必

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值