當前位置: 首頁>>代碼示例>>Python>>正文


Python hierarchy.to_tree方法代碼示例

本文整理匯總了Python中scipy.cluster.hierarchy.to_tree方法的典型用法代碼示例。如果您正苦於以下問題:Python hierarchy.to_tree方法的具體用法?Python hierarchy.to_tree怎麽用?Python hierarchy.to_tree使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在scipy.cluster.hierarchy的用法示例。


在下文中一共展示了hierarchy.to_tree方法的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: cluster

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def cluster(self,maxClust):
        D = self.corrDist()
        Z = linkage(D[np.triu_indices(self.n, 1)])  # create a linkage matrix based on the distance matrix
        if maxClust < 1:
            maxClust = 1
        if maxClust > self.n:
            maxClust = self.n
        map = self.__breakClust__(to_tree(Z),maxClust)
        return map

    # a recursive helper function which breaks down the dendrogram branches until all clusters have no more than maxClust elements 
開發者ID:ymirsky,項目名稱:KitNET-py,代碼行數:13,代碼來源:corClust.py

示例2: get_clustering_as_tree

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def get_clustering_as_tree(vectors, linkage=constants.linkage_method_default, distance=constants.distance_metric_default, progress=progress):
    is_distance_and_linkage_compatible(distance, linkage)

    progress.update('Clustering data with "%s" linkage using "%s" distance' % (linkage, distance))
    linkage = hierarchy.linkage(vectors, metric=distance, method=linkage)

    progress.update('Recovering the tree from the clustering result')
    tree = hierarchy.to_tree(linkage, rd=False)

    return tree 
開發者ID:merenlab,項目名稱:anvio,代碼行數:12,代碼來源:clustering.py

示例3: hct_from_lkg

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def hct_from_lkg(hac_z):
        return HClustTree(sch.to_tree(hac_z)) 
開發者ID:TaylorResearchLab,項目名稱:scedar,代碼行數:4,代碼來源:sdm.py

示例4: test_mirac_wrong_args

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def test_mirac_wrong_args(self):
        x = np.zeros((10, 10))
        # wrong min_cl_n
        with pytest.raises(ValueError) as excinfo:
            cluster.MIRAC(x, metric='euclidean', min_cl_n=-0.1)

        with pytest.raises(ValueError) as excinfo:
            cluster.MIRAC(x, metric='euclidean', min_cl_n=-0.1)
        # wrong cl_mdl_scale_factor
        with pytest.raises(ValueError) as excinfo:
            cluster.MIRAC(x, metric='euclidean', cl_mdl_scale_factor=-0.1)
        # wrong encode type
        with pytest.raises(ValueError) as excinfo:
            cluster.MIRAC(x, metric='euclidean', encode_type='1')

        with pytest.raises(ValueError) as excinfo:
            cluster.MIRAC(x, metric='euclidean', encode_type=1)

        with pytest.raises(ValueError) as excinfo:
            cluster.MIRAC(x, metric='euclidean', dim_reduct_method='NONN')

        # hac tree n_leaves different from n_samples
        z = sch.linkage([[0], [5], [6], [8], [9], [12]],
                        method='single', optimal_ordering=True)
        hct = eda.HClustTree(sch.to_tree(z))
        with pytest.raises(ValueError) as excinfo:
            cluster.MIRAC(x, metric='euclidean', hac_tree=hct)

    # no specific purpose. Just to exaust the coverage 
開發者ID:TaylorResearchLab,項目名稱:scedar,代碼行數:31,代碼來源:test_mirac.py

示例5: test_bi_partition_min_no_spl

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def test_bi_partition_min_no_spl(self):
        # ____|____ 6
        # |    ___|____ 5
        # |    |    __|___ 4
        # |    |    |    |
        # 3    2    1    0
        z = sch.linkage([[0, 0], [1, 1], [3, 3], [6, 6]],
                        metric='euclidean', method='complete',
                        optimal_ordering=True)
        hct = eda.HClustTree(sch.to_tree(z))
        assert hct.leaf_ids() == [3, 2, 1, 0]
        labs, sids, lst, rst = hct.bi_partition(
            soft_min_subtree_size=2, return_subtrees=True)
        assert labs == [0, 0, 1, 1]
        assert sids == [3, 2, 1, 0]
        # hct should be changed accordingly
        assert hct.leaf_ids() == [3, 2, 1, 0]
        assert hct.left_leaf_ids() == [3, 2]
        assert hct.right_leaf_ids() == [1, 0]
        # subtrees
        assert lst.leaf_ids() == [3, 2]
        assert rst.leaf_ids() == [1, 0]
        # prev
        assert lst._prev is hct
        assert rst._prev is hct
        # ids
        assert lst._node.id == 5
        assert lst._node.left.id == 3
        assert lst._node.right.id == 2
        # ids
        assert rst._node.id == 4
        assert rst._node.left.id == 1
        assert rst._node.right.id == 0 
開發者ID:TaylorResearchLab,項目名稱:scedar,代碼行數:35,代碼來源:test_dense_sdm.py

示例6: test_bi_partition_min_no_spl_lr_rev

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def test_bi_partition_min_no_spl_lr_rev(self):
        # left right reversed
        # ____|____ 6
        # |    ___|____ 5
        # |    |    __|___ 4
        # |    |    |    |
        # 3    2    1    0
        z = sch.linkage([[0, 0], [1, 1], [3, 3], [6, 6]],
                        metric='euclidean', method='complete',
                        optimal_ordering=True)
        root = sch.to_tree(z)
        # reverse left right subtree
        root_left = root.left
        root.left = root.right
        root.right = root_left
        hct = eda.HClustTree(root)
        assert hct.leaf_ids() == [2, 1, 0, 3]
        labs, sids, lst, rst = hct.bi_partition(
            soft_min_subtree_size=2, return_subtrees=True)
        assert labs == [0, 0, 1, 1]
        assert sids == [2, 1, 0, 3]
        # hct should be changed accordingly
        assert hct.leaf_ids() == [2, 1, 0, 3]
        assert hct.left_leaf_ids() == [2, 1]
        assert hct.right_leaf_ids() == [0, 3]
        # subtrees
        assert lst.leaf_ids() == [2, 1]
        assert rst.leaf_ids() == [0, 3]
        # prev
        assert lst._prev is hct
        assert rst._prev is hct
        assert hct._left is lst._node
        assert hct._right is rst._node
        # ids
        assert rst._node.id == 4
        assert rst._node.left.id == 0
        assert rst._node.right.id == 3
        # ids
        assert lst._node.id == 5
        assert lst._node.left.id == 2
        assert lst._node.right.id == 1 
開發者ID:TaylorResearchLab,項目名稱:scedar,代碼行數:43,代碼來源:test_dense_sdm.py

示例7: test_bi_partition_min_spl

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def test_bi_partition_min_spl(self):
        # _____|_____
        # |     ____|____
        # |   __|__   __|__
        # |   |   |   |   |
        # 4   3   2   1   0
        z = sch.linkage([[0, 0], [1, 1], [3, 3], [4, 4], [10, 10]],
                        metric='euclidean', method='complete',
                        optimal_ordering=True)
        hct = eda.HClustTree(sch.to_tree(z))
        assert hct.leaf_ids() == [4, 3, 2, 1, 0]
        assert hct.left_leaf_ids() == [4]
        assert hct.right().left().leaf_ids() == [3, 2]
        assert hct.right().right().leaf_ids() == [1, 0]
        labs, sids, lst, rst = hct.bi_partition(
            soft_min_subtree_size=2, return_subtrees=True)
        assert labs == [0, 0, 0, 1, 1]
        assert sids == [4, 3, 2, 1, 0]
        # hct should be changed accordingly
        assert hct.leaf_ids() == [4, 3, 2, 1, 0]
        assert hct.left_leaf_ids() == [4, 3, 2]
        assert hct.right_leaf_ids() == [1, 0]
        # left
        assert lst._prev is hct
        assert lst._node.left.left.id == 4
        assert lst._node.left.right.id == 3
        assert lst._node.right.id == 2
        # right
        assert rst._prev is hct
        assert rst._node.left.id == 1
        assert rst._node.right.id == 0 
開發者ID:TaylorResearchLab,項目名稱:scedar,代碼行數:33,代碼來源:test_dense_sdm.py

示例8: test_bi_partition_min_switch_spl

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def test_bi_partition_min_switch_spl(self):
        # _______|________
        # |         _____|_____
        # |     ____|____     |
        # |   __|__   __|__   |
        # |   |   |   |   |   |
        # 0   1   2   3   4   5
        # round 1: ( ((0, (1, 2)), (3, 4)), (5) )
        # round 2: ( (0, (1, 2), (3, (4, 5)) )
        z = sch.linkage([[0], [5], [6], [8], [9], [12]],
                        method='single', optimal_ordering=True)
        root = sch.to_tree(z)
        assert root.left.id == 0
        assert root.right.right.id == 5
        assert root.right.left.left.left.id == 1
        assert root.right.left.left.right.id == 2
        assert root.right.left.right.left.id == 3
        assert root.right.left.right.right.id == 4
        hct = eda.HClustTree(root)
        labs, sids, lst, rst = hct.bi_partition(
            soft_min_subtree_size=3, return_subtrees=True)
        assert labs == [0, 0, 0, 1, 1, 1]
        assert sids == [0, 1, 2, 3, 4, 5]
        # lst
        assert hct._left is lst._node
        assert lst._prev is hct
        assert lst.left_leaf_ids() == [0]
        assert lst.right_leaf_ids() == [1, 2]
        # rst
        assert hct._right is rst._node
        assert rst._prev is hct
        assert rst.left_leaf_ids() == [3]
        assert rst.right_leaf_ids() == [4, 5] 
開發者ID:TaylorResearchLab,項目名稱:scedar,代碼行數:35,代碼來源:test_dense_sdm.py

示例9: run

# 需要導入模塊: from scipy.cluster import hierarchy [as 別名]
# 或者: from scipy.cluster.hierarchy import to_tree [as 別名]
def run(self, pairwise_value_file,
                    method, 
                    similarity,
                    max_sim_value,
                    name_col1,
                    name_col2,
                    value_col,
                    output_tree):
        """Perform hierarchical clustering on pairwise value files.

        Parameters
        ----------
        pairwise_value_file : str
            File with pairwise similarity or dissimilarity values.
        method : str
            Clustering method to use.
        similarity : boolean
            Flag indicating file contain similarity values.
        max_sim_value : float   
            Maximum value of similarity scores.
        name_col1 : int
            Index of first column with genome names.
        name_col2 : int
            Index of second column with genome names.
        value_col : int
            Index of column with similarity or dissimilarity values.
        """
        
        diss_vector, genome_labels = self._parse_data(pairwise_value_file, 
                                                        name_col1, 
                                                        name_col2, 
                                                        value_col, 
                                                        similarity, 
                                                        max_sim_value)
        
        clusters = hierarchy.linkage(diss_vector, method=method)

        tree = hierarchy.to_tree(clusters)
        newick_str = self._save_newick(tree, "", tree.dist, genome_labels)
        
        fout = open(output_tree, 'w')
        fout.write(newick_str + '\n')
        fout.close() 
開發者ID:dparks1134,項目名稱:CompareM,代碼行數:45,代碼來源:hierarchical_clustering.py


注:本文中的scipy.cluster.hierarchy.to_tree方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。