【发布时间】:2020-03-10 00:55:13
【问题描述】:
如何使用聚类方法的结果更新 igraph 图?
我已经在 Python 中执行了一些聚类。
例如,我有一个 igraph 图形对象:
# Generate a graph with 100 nodes and 250 edges.
import igraph
g = igraph.Graph.Erdos_Renyi(n=100,m=250)
然后我应用我的聚类算法。在这种情况下,出于举例的目的,我只是将每个节点随机分配到集群 0-3。
# Make a random partition of 4 clusters.
from random import randint
partition = [randint(0,3) for x in range(100)]
我可以生成一个 igraph 聚类对象:
# Cluster the graph.
clusters = igraph.VertexClustering(g,membership = partition)
这使我能够访问该类的所有有用方法,例如:
clusters.modularity
但是,我想用我的聚类结果更新原始图 g。
# Checks.
clusters.membership == partition # True
clusters.graph.clusters().membership == partition # False - I want this to be True.
有什么办法可以做到吗?
【问题讨论】:
标签: python cluster-analysis igraph