在 Python 中使用 igraph 进行社区检测

Posted

技术标签:

【中文标题】在 Python 中使用 igraph 进行社区检测【英文标题】:Community detection with igraph in Python 【发布时间】:2014-02-26 15:52:56 【问题描述】:

我需要检测网络中的社区。 但是,我无法获得会员资格

# Script
from igraph import *

karate = Graph.Read_Pajek("karate.gml")
karate.simplify()
cl = karate.community_fastgreedy()
print cl.membership # ---> Not work

有人知道如何获取会员吗?

【问题讨论】:

【参考方案1】:

此方法返回完整的树状图,因此您需要先将其转换为聚类。

from igraph import *
karate = Nexus.get("karate")
cl = karate.community_fastgreedy()
cl.as_clustering().membership

# [0, 1, 1, 1, 0, 0, 0, 1, 2, 1, 0, 0, 1, 1, 2, 2, 0, 1, 2, 0, 
#  2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]

【讨论】:

以上是关于在 Python 中使用 igraph 进行社区检测的主要内容,如果未能解决你的问题,请参考以下文章

networkx/igraph (Python) 上的指定边长

使用 Python 通过 igraph 分析 shapefile

在 Python 的 igraph 中删除多条边

python中将edgelist导入igraph的格式

使用Python-iGraph绘制好友关系图

图计算库 igraph 在 windows 10 上的编译安装