python-louvain

安装

louvain当前最新版本:0.14

pip install python-louvain

由于是处理社区的数据,这里还是安装networkx

pip install networkx

在这里插入图片描述

使用

不妨来运行下一个案例

import community as community_louvain
import matplotlib.cm as cm
import matplotlib.pyplot as plt
import networkx as nx

# load the karate club graph
G = nx.karate_club_graph()

#first compute the best partition
partition = community_louvain.best_partition(G)

# compute the best partition
partition = community_louvain.best_partition(G)

# draw the graph
pos = nx.spring_layout(G)
# color the nodes according to their partition
cmap = cm.get_cmap('viridis', max(partition.values()) + 1)
nx.draw_networkx_nodes(G, pos, partition.keys(), node_size=40,
                       cmap=cmap, node_color=list(partition.values()))
nx.draw_networkx_edges(G, pos, alpha=0.5)
plt.show()

在这里插入图片描述

API学习

使用Louvain heuristices算法来进行社区的划分,试图获得最多的社区。

community.best_partition(graph, partition=None, weight='weight', resolution=1.0, randomize=None, random_state=None)
参数参数说明
graphnetworkx.Graph
partitiondict, optional;将使用这些节点开始划分,最终字典键是这些节点,值是所划分的社区
weightstr, optional;使用图中的键作为权重,默认是weight
resolutiondouble, optional; 将会改变社区的大小,默认是1,该值越大划分的社区越少,反之亦然
randomizeboolean, optional;随机化节点评估顺序和社区评估顺序,以在每次调用时获得不同的划分
random_stateint, RandomState instance or None, optional (default=None);如果intrandom_state是随机数生成器使用的种子;如果RandomState实例,random_state是随机数生成器;如果没有,则随机数生成器是使用np.randomRandomState实例.

返回:社区划分后的字典对象

当然,网站中还有其余的API接口,感觉我不会用到,就不介绍了。

——————
github地址:python-louvain

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦否

文章对你有用?不妨打赏一毛两毛

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值