SciPy - DisjointSet() 方法



SciPy DisjointSet() 方法用于将数据分区管理到不相交的子集中。它用于管理分层聚类算法中的集群。

语法

以下是 SciPy DisjointSet() 方法的语法 -

DisjointSet([item_1, item_2, ...])

参数

此方法接受列表作为参数。

返回值

此方法不返回任何值。

示例

以下示例展示了 SciPy DisjointSet() 方法的用法。

from scipy.cluster.hierarchy import DisjointSet

# create a disjoint-set data structure with 5 elements
ds = DisjointSet([1, 2, 3, 'a', 'b'])

# union operations 
ds.merge(1, 2)
ds.merge(3, 'a')
ds.merge('a', 'b')

# find the root elements
print(ds[2]) 
print(ds['b'])  

# test connectivity
print(ds.connected(1, 2))  
print(ds.connected(1, 'b')) 

# list elements in disjoint set
print(list(ds))  

# get the subset containing 'a'
print(ds.subset('a'))  

# get the size of the subset containing 'a'
print(ds.subset_size('a')) 

# get all subsets in the disjoint set
print(ds.subsets()) 

结果

上述代码产生以下结果 -

1
3
True
False
[1, 2, 3, 'a', 'b']
{'a', 3, 'b'}
3
[{1, 2}, {'a', 3, 'b'}]
scipy_reference.htm
广告