class documentation

class Cover: (source)

已知子类:igraph.VertexCover

构造函数: Cover(clusters, n)

查看层次结构

表示任意有序集合的覆盖的类。

覆盖类似于聚类,但集合中的每个元素可能属于覆盖中的多个簇,并且也允许不属于任何簇的元素。

Cover 实例提供了与 Clustering 实例类似的 API;例如,遍历一个 Cover 会像遍历一个普通的 Clustering 实例一样遍历集群。然而,它们并不是相互派生或来自一个共同的超类,并且可能存在仅存在于其中一个或另一个中的函数。

可以通过[]操作符访问单个覆盖的集群:

>>> cl = Cover([[0,1,2,3], [2,3,4], [0,1,6]])
>>> cl[0]
[0, 1, 2, 3]

成员向量可以通过membership属性访问。请注意,与Clustering实例不同,成员向量将包含每个项目所属的集群索引的列表:

>>> cl.membership
[[0, 2], [0, 2], [0, 1], [0, 1], [1], [], [2]]

可以通过len函数获取集群的数量:

>>> len(cl)
3

你可以像遍历常规的集群列表一样遍历封面:

>>> for cluster in cl:
...     print(" ".join(str(idx) for idx in cluster))
...
0 1 2 3
2 3 4
0 1 6

如果你需要一次性将所有集群作为列表获取,你可以简单地将覆盖转换为列表:

>>> cluster_list = list(cl)
>>> print(cluster_list)
[[0, 1, 2, 3], [2, 3, 4], [0, 1, 6]]

Clustering 对象可以很容易地通过构造函数转换为 Cover 对象:

>>> clustering = Clustering([0, 0, 0, 0, 1, 1, 1, 2, 2, 2])
>>> cover = Cover(clustering)
>>> list(clustering) == list(cover)
True
方法 __getitem__ 返回具有给定索引的集群。
方法 __init__ 使用给定的簇构造一个覆盖。
方法 __iter__ 遍历此覆盖中的集群。
方法 __len__ 返回此覆盖中的集群数量。
方法 __str__ 返回覆盖的字符串表示。
方法 size 返回给定集群的大小。
方法 size_histogram 返回集群大小的直方图。
方法 sizes 返回给定聚类的大小。
方法 summary 返回覆盖的摘要。
属性 membership 返回此覆盖的成员向量。
属性 n 返回此覆盖集合中的元素数量。
方法 _formatted_cluster_iterator 遍历集群并将它们格式化为字符串以在摘要中显示。
实例变量 _clusters 未记录
实例变量 _n 未记录
def __getitem__(self, index): (source)

返回具有给定索引的集群。

def __init__(self, clusters, n=0): (source)
overridden in igraph.VertexCover

使用给定的集群构建一个覆盖。

参数
clusters此覆盖中的集群,作为列表或可迭代对象。每个集群由一个包含此集群中项目ID的列表或元组指定。ID从零开始。
n集合中元素的总数,该集合由这个覆盖所覆盖。如果它小于所有聚类中找到的唯一元素的数量,我们将简单地使用唯一元素的数量,因此将其保留为零是安全的。只有在某些元素未被任何聚类覆盖时,才需要指定此参数。
def __iter__(self): (source)

遍历此覆盖中的集群。

def __len__(self): (source)

返回此覆盖中的集群数量。

def __str__(self): (source)

返回封面的字符串表示。

def size(self, idx): (source)

返回给定集群的大小。

参数
idx我们感兴趣的集群。
def size_histogram(self, bin_width=1): (source)

返回集群大小的直方图。

参数
bin_width直方图的箱宽
返回
一个 Histogram 对象
def sizes(self, *args): (source)

返回给定集群的大小。

索引作为位置参数给出。如果没有位置参数,函数将返回所有集群的大小。

def summary(self, verbosity=0, width=None): (source)

返回封面的摘要。

摘要包括项目数量和集群数量,如果详细程度不为零,还包括每个集群的成员列表。

参数
verbosity确定是否应打印集群成员。零详细度仅打印项目和集群的数量。
width未记录
返回
封面摘要作为字符串。

返回此覆盖的成员向量。

覆盖n个元素的覆盖的成员向量是一个长度为n的列表,其中元素i包含第i个项的簇索引。

返回此覆盖所覆盖集合中的元素数量。

def _formatted_cluster_iterator(self): (source)
overridden in igraph.VertexCover

遍历集群并将它们格式化为字符串以在摘要中显示。

_clusters = (source)

未记录

未记录