关于数据挖掘:R语言网络社区检测社群发现分析女性参加社交活动和社区节点着色可视化

42次阅读

共计 1495 个字符,预计需要花费 4 分钟才能阅读完成。

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

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

plot(g)

我应用数据集,代表了察看到的 18 位女性加入 14 场社交活动的状况。

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

community(g)
col <- membership + 1
plot

正如咱们所看到的,该算法找到了 2 个社区,乍一看,这种划分仿佛是正当的。无论如何,还有一种天然的划分是算法无奈找到的:事件 / 女性的二元关系。每个节点都有这样的属性:” 是女性 “ 或 “ 是事件 ”。让咱们用不同的形式来形容这个图的特色。咱们有 14 个事件。对于这些,咱们扭转它们的形态。

shape <- "squa"
shape <- "cice"
plot(g)

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

在网络中寻找社区是简单零碎范式下的一项常见工作。有几种办法能够应用十分不同的包对图进行社区分区。

网络社区检测算法

walktrap.community

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

边缘. 两头. 社区

这个算法就是 Girvan-Newman 算法。它是一种宰割算法,在每一步中,具备最高间性的边被从图中移除。对于每一次划分,你都能够计算出图的模块化水平。最初,在这个过程给你带来最高模块化值的中央抉择切割树状图。

Newman 疾速算法(fast greedy)”)

该算法是纽曼算法。在这种状况下,算法是凝聚的。在每一步,两组合并。合并是通过优化模块化决定的。这是一种疾速算法,但有一个贪心算法的毛病。因而,尽管我发现它有用且精确,但它可能不会产生最佳的整体社区划分。

自旋玻璃社群发现

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

# 首先咱们加载 ipgrah 软件包

 
# 让咱们生成两个网络并将其合并为一个图。graph.union
 
# 让咱们删除多线和循环
simplify
 
# 让咱们用 Grivan-Newman 算法看看这里是否有社区。# Grivan-Newman 算法
# 首先,咱们计算边缘间性、合并等。edge.betweenness.community
 
# 当初咱们有了合并 / 拆分,咱们须要计算模块化。# 对于每个合并,咱们将应用一个函数,对于每个边被删除,将创立第二个图,查看其成员资格并应用该成员资格来计算模块化水平
membership
# - 在原图 g 上计算模块化 
  modularit
 
# 咱们当初能够绘制所有模块化的图
plot
 
# 当初,让咱们依据节点的成员资格为其着色
removed.edges
color=membership
 
# 让咱们为图抉择一个布局
layout
 
# 绘制它
plot
 
# 如果咱们想应用 fastgreedy.community agorithm,咱们会这样做
fastgreedy.community

plot


最受欢迎的见解

1. 采纳 spss-modeler 的 web 简单网络对所有腧穴进行剖析

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

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

4. 在 R 语言中应用航空公司简单网络对疫情进行建模

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

6. 应用 Python 和 SAS Viya 剖析社交网络

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

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

9. 用关联规定数据挖掘摸索药物配伍中的法则

正文完
 0