当前位置: 首页>>代码示例>>Python>>正文


Python Tree.length方法代码示例

本文整理汇总了Python中tree.Tree.length方法的典型用法代码示例。如果您正苦于以下问题:Python Tree.length方法的具体用法?Python Tree.length怎么用?Python Tree.length使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在tree.Tree的用法示例。


在下文中一共展示了Tree.length方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: gen_simple_trees

# 需要导入模块: from tree import Tree [as 别名]
# 或者: from tree.Tree import length [as 别名]
def gen_simple_trees(criteria, stats):
    """ Generate simplified parse trees from articles matching the criteria """
    for a in Article.articles(criteria):
        if not a.root_domain or "raduneyti" in a.root_domain:
            # Skip ministry websites due to amount of chaff found there
            continue
        tree = Tree(url = a.url, authority = a.authority)
        # Note the parse timestamp
        stats["parsed"] = a.parsed
        tree.load(a.tree)
        for ix, stree in tree.simple_trees():
            yield stree, tree.score(ix), tree.length(ix)
开发者ID:vthorsteinsson,项目名称:Reynir,代码行数:14,代码来源:pairgen.py

示例2: generate_class_trees

# 需要导入模块: from tree import Tree [as 别名]
# 或者: from tree.Tree import length [as 别名]
    def generate_class_trees(self):
        class_trees = {}
        if self.permuter == "genetree":
            for k in range(self.num_classes):
                class_trees[k + 1] = self.master_tree.sample_gene_tree(scale_to=self.permutations_list[k])

        else:
            # Base trees for each class
            for k in range(self.num_classes):
                if self.permuter == "nni":
                    t = self.master_tree.rnni(times=self.permutations_list[k])
                    t.name = "class{}".format(k + 1)
                    class_trees[k + 1] = t
                elif self.permuter == "spr":
                    t = self.master_tree.rspr(
                        times=self.permutations_list[k], disallow_sibling_sprs=True, keep_entire_edge=True
                    )
                    t.name = "class{}".format(k + 1)
                    class_trees[k + 1] = t
                elif self.permuter == "lgt":
                    t = self.master_tree.rlgt(times=self.permutations_list[k], disallow_sibling_lgts=True)
                    t.name = "class{}".format(k + 1)
                    class_trees[k + 1] = t

            # Expand base class trees into individual trees
            gene_trees = list()
            for k in range(self.num_classes):
                num_genes = self.class_list[k]
                trees = list()

                # populate the trees list
                for _ in range(num_genes):
                    class_tree = class_trees[k + 1]
                    tree = Tree(class_tree.newick)
                    tree.name = class_tree.name
                    trees.append(tree)

                # do per-tree rates/branch length adjustments
                for i, tree in enumerate(trees, start=1):
                    if self.autocorrelated_relaxed_clock:
                        tree.autocorrelated_relaxed_clock(1, 0.01)
                        for node in tree.postorder_node_iter():
                            node.edge_length *= node.rate
                        tree.name += "_{}".format(i)

                    elif self.uncorrelated_relaxed_clock:
                        tree.uncorrelated_relaxed_clock(1, 0.01 * tree.length())
                        for node in tree.postorder_node_iter():
                            node.edge_length *= node.rate
                        tree.name += "_{}".format(i)

                    elif self.scale_rates:
                        coeff = np.random.uniform(0.666, 1.333)
                        tree.scale(coeff, inplace=True)
                        tree.name += "_{}".format(i)

                    else:
                        tree.name += "_{}".format(i)

                gene_trees.extend(trees)

        self.class_trees = class_trees
        self.gene_trees = gene_trees
开发者ID:xypan1232,项目名称:treeCl,代码行数:65,代码来源:simulator.py


注:本文中的tree.Tree.length方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。