【问题标题】:Setting Size of Detected Communities in R在 R 中设置检测到的社区的大小
【发布时间】:2016-08-11 23:01:40
【问题描述】:

我正在使用 igraph 社区检测,但社区规模太小或太大。有没有办法指定检测到的社区的大小?如果没有,我有什么办法可以手动拆分或合并从 igraph 检测到的社区?谢谢!

【问题讨论】:

标签: r igraph


【解决方案1】:

虽然我认为无法设置/指定igraph 检测到的社区的大小,但某些社区检测算法允许您指定多少 em> 您想要的社区(拆分/合并的替代方法)。

您可以使用cluster_spinglass() 函数并将spins 设置为所需的社区数量。 或者使用其中一种分层方法,然后使用cut_at() 获取所需的社区数量,使用no 参数指定您想要的社区数量。

示例代码:

# Set up your graph object
g <-[an igraph object] # set up your graph

# Use spinglass to create a set number of communities
sg <- g %>% cluster_spinglass(spins = 10) # produces 10 communities using spinglass algorithm

# Use hierarchical methods and cut_at to create a set number of communities 
walk <- g %>% cluster_walktrap() %>% cut_at(no = 10) 
eb <- g %>% cluster_edge_betweenness() %>% cut_at(no = 10)

请注意,spinglass 方法将返回一个 communities 对象,而 cut_at 方法只是返回图形中所有节点的社区索引(即一个简单的数字向量)。

您可以在communitieshelp page找到更多详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 2023-01-10
    • 2020-01-21
    • 2015-08-04
    • 1970-01-01
    • 2014-08-22
    相关资源
    最近更新 更多