我使用JEBL和跌跌撞撞的API,因为我找不到非常清晰的留档或示例。
我想做的是在一棵树上阅读,树上的树枝标注了长度,节点也标注了长度。然后,我应该能够获取树叶并向上遍历树,同时检查节点的注释(使用JEBL遍历很容易,我的问题实际上是注释)。
它们是系统发育树,其中每个节点都是一个物种,注释将标记特定节点上是否存在某些基因,并且可能有足够少的基因,一个字符串就足够了(例如,如果有三个基因a、B和C,可能的节点注释可能是“AB”、“AC”或“),这必须是非唯一的(因为两个节点可能有相同的基因集)。
目前,我正在以Newick格式读取这些树——我可以读取这些树,并具有分支长度和遍历树,但我不知道如何以有用的方式标记这些节点(它们必须能够以读取它们的格式进行注释,而不是在读取之后以编程方式进行注释):
import java.io.IOException;
import java.io.StringReader;
import java.util.Set;
import jebl.evolution.trees.SimpleRootedTree;
import jebl.evolution.graphs.Node;
import jebl.evolution.io.ImportException;
import jebl.evolution.io.NewickImporter;
import jebl.gui.trees.treeviewer.TreeViewer;
import jebl.evolution.trees.Tree;
public class TreeLoader {
public static void main(String[] args) {
String newick = "(A:0.1,B:0.2,(C:0.3,D:0.4)E:0.5)F;";
StringReader sr = new StringReader(newick);
NewickImporter ni = new NewickImporter(sr, true);
try {
SimpleRootedTree srt = (SimpleRootedTree) ni.importNextTree();
Set<Node> leaves = srt.getExternalNodes();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ImportException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
我看不出有什么方法可以在Newick表示中包含节点注释来正确读取。(我不能使用节点名称(上面例子中的A、B等),因为它们必须是唯一的)。我一直在看Nexus格式,但并不太了解它。我下载了树状图,试图创建适当的Nexus文件,但我不太明白如何按照我的要求进行注释。之后,我不确定JEBL是否会以有用的方式读取它们。我认为前进的方向是利用JEBL的属性功能(因为节点实现了这一点),但我不确定它将如何工作。
关于如何设置我的Nexus文件和/或如何让JEBL正确读取它们以及如何访问注释的任何建议都将非常感激!!
可能有点离题,但您是否考虑过使用ETE工具包:
除了搜索和遍历等一系列功能外,它还可以进行节点注释:
http://etetoolkit.org/docs/latest/tutorial/tutorial_trees.html#node-注释
生物进化 在研究生物进化中,常用一种类似树状分支的图形来概括各种(类)生物之间的亲缘关系。下图(来源于网络)就是一棵生物进化树。 树可分为 有根树(rooted tree)和 无根树(unrooted tree)两类,为了便于讨论,这里我们只涉及有根树。有根树是具有方向的树,选择其中某个确定的节点,将其作为树中所有物种的共同祖先(根)。有根树这种结构在计算机科学中极为常见,尤其适用表述层次结构。下
二面(约35分钟) 1、自我介绍(在学校的课程上完了吗,可以实习多久等) 2、描述ABtest你所知道的全部内容 3、描述z统计量,t统计量,F统计量 4、z分布,t分布的区别是什么 5、两道SQL题目: (a)找到每个班的学生的数量 ;(b)每个班各科目平均成绩>80分的学生人数和比例 6、怎么分析抖音某个商品购买量下降 7、反问环节
问题内容: 我在使用apache commons数学库时遇到问题。 我只想创建f(x)= 4x ^ 2 + 2x之类的函数,然后计算该函数的导数 -> f’(x)= 8x + 2 我阅读了有关差异化的文章(http://commons.apache.org/proper/commons- math/userguide/analysis.html,第4.7节)。 有一个我不明白的例子: 在第5行中,
已经入职一个多月了,才想起来写篇面经,有些面试细节记得不太清楚了,大家仅供参考。总体来说面试体验挺好,问的问题也没有很刁钻(可能是急缺人手),废话不多说直接上干货 一面 1. 自我介绍 2. 项目介绍-主要关于我在美团实习做的项目,AB实验,如何确保用户画像相似,观察的核心指标等等 3. t检验和z检验 4. p值的意义 5. sql:求用户留存 6. 逻辑回归背后的核心原理 7. 随即森林和xg
不知道根据站点的规则我是否被允许这么做...但我会抓住机会...请你忍耐一下,我只是个学生...:-) 我有个大学作业...我很难理解类应该做什么。我曾三次去找我的老师,他给我的答案一点帮助也没有。总之,分配的详细信息如下所示... 创建一个名为的类,它充当节点的容器。树类应该支持以下方法。 public void add(Node parent,Node child){}--向父节点添加新的子节
我正在应用程序中使用Android Room Persistence library(v.1.0.0-alpha1)。当我在Android studio中打开model class(Kotlin Data class)时,它显示了用于Room数据库的所有注释(如@Entity、@ColumnInfo等)的未解析引用。我尝试将arch库的版本改为1.0.0-alpha5,但结果是一样的。 在Lint