拓端tecdat|R语言网络社区检测(社群发现)分析女性参加社交活动和社区节点着色可视化

原文链接:http://tecdat.cn/?p=24886 

原文出处:拓端数据部落公众号

在网络上进行社区检测时,有时我们不仅拥有实体之间的联系。这些实体代表了我们可能也想在网络可视化中代表的现实事物。

  1.    
  2.   plot(g)
  3.    

拓端tecdat|R语言网络社区检测(社群发现)分析女性参加社交活动和社区节点着色可视化

我使用数据集,代表了观察到的 18 位女性参加 14 场社交活动的情况。

不考虑这个图是二向图,让我们尝试将图划分为社区。有自然的分界线吗?让我们根据节点所属的社区为节点着色:

  1.   community(g)
  2.   col <- membership + 1
  3.   plot

拓端tecdat|R语言网络社区检测(社群发现)分析女性参加社交活动和社区节点着色可视化

正如我们所看到的,该算法找到了2个社区,乍一看,这种划分似乎是合理的。无论如何,还有一种自然的划分是算法无法找到的:事件/女性的二元关系。每个节点都有这样的属性:"是女性 "或 "是事件"。让我们用不同的方式来描述这个图的特征。我们有14个事件。对于这些,我们改变它们的形状。 

  1.   shape <- "squa"
  2.   shape <- "cice"
  3.   plot(g)

拓端tecdat|R语言网络社区检测(社群发现)分析女性参加社交活动和社区节点着色可视化

如何从给定的网络中提取社区?

在网络中寻找社区是复杂系统范式下的一项常见任务。有几种方法可以使用非常不同的包对图进行社区分区。

网络社区检测算法

walktrap.community

该算法通过执行随机游走找到密集连接的子图。这个想法是随机游走将倾向于留在社区内,而不是跳到其他社区。

边缘.中间.社区

这个算法就是Girvan-Newman算法。它是一种分割算法,在每一步中,具有最高间性的边被从图中移除。对于每一次划分,你都可以计算出图的模块化程度。最后,在这个过程给你带来最高模块化值的地方选择切割树状图。

Newman快速算法(fast greedy)

该算法是纽曼算法。在这种情况下,算法是凝聚的。在每一步,两组合并。合并是通过优化模块化决定的。这是一种快速算法,但有一个贪婪算法的缺点。因此,虽然我发现它有用且准确,但它可能不会产生最佳的整体社区划分。

自旋玻璃社群发现

该算法使用自旋玻璃模型和模拟退火来查找网络内的社区。

  1.    
  2.   # 首先我们加载ipgrah软件包
  3.    
  4.    
  5.   # 让我们生成两个网络并将其合并为一个图。
  6.   graph.union
  7.    
  8.   # 让我们删除多线和循环
  9.   simplify
  10.    
  11.   # 让我们用Grivan-Newman算法看看这里是否有社区。
  12.   # Grivan-Newman算法
  13.   # 首先,我们计算边缘间性、合并等。
  14.   edge.betweenness.community
  15.    
  16.   # 现在我们有了合并/拆分,我们需要计算模块化。
  17.   # 对于每个合并,我们将使用一个函数,对于每个边被删除,将创建第二个图,检查其成员资格并使用该成员资格来计算模块化程度
  18.   membership
  19.   # -在原图g上计算模块化
  20.   modularit
  21.    
  22.   # 我们现在可以绘制所有模块化的图
  23.   plot
  24.    
  25.   # 现在,让我们根据节点的成员资格为其着色
  26.   removed.edges
  27.   color=membership
  28.    
  29.   # 让我们为图选择一个布局
  30.   layout
  31.    
  32.   # 绘制
  33.   plot
  34.    
  35.   # 使用 fastgreedy.community算法
  36.    
  37.   plot
  38.    

拓端tecdat|R语言网络社区检测(社群发现)分析女性参加社交活动和社区节点着色可视化


拓端tecdat|R语言网络社区检测(社群发现)分析女性参加社交活动和社区节点着色可视化

最受欢迎的见解

1.采用spss-modeler的web复杂网络对所有腧穴进行分析

2.用R语言和python进行社交网络中的社区检测

3.R语言文本挖掘NASA数据网络分析,tf-idf和主题建模

4.在R语言中使用航空公司复杂网络对疫情进行建模

5.python隶属关系图模型 基于模型的网络中密集重叠社区检测

6.使用Python和SAS Viya分析社交网络

7.关联网络分析:已迁离北京外来人口的数据画像

8.情感语义网络游记数据感知旅游目的地形象

9.用关联规则数据挖掘探索药物配伍中的规律

上一篇:拓端tecdat|R语言逻辑回归、随机森林、SVM支持向量机预测Framingham心脏病风险和模型诊断可视化


下一篇:batchnorm(Batch Normalization)