【视频】复杂网络分析CNA简介与R语言对婚礼数据聚类社区检测和可视化|数据分享

简介: 【视频】复杂网络分析CNA简介与R语言对婚礼数据聚类社区检测和可视化|数据分享

全文链接:http://tecdat.cn/?p=18770 


复杂网络分析研究如何识别、描述、可视化和分析复杂网络。

为了用R来处理网络数据,我们使用婚礼数据集查看文末了解数据获取方式

CNA 研究和应用爆炸式增长的突出原因是两个因素 - 一个是廉价而强大的计算机的可用性,使在数学、物理和社会科学方面接受过高级培训的研究人员和科学家能够进行一流的研究;另一个因素是是人类社会、行为、生物、金融和技术方面不断增加的复杂性。


网络是离散数据的组织和表示的关系形式。关于网络的两个最重要的概念是实体和它们之间的关系。实体称为节点,关系称为边。网络节点和边是高级抽象,对于大多数网络来说,它们的真实性质并不重要。当必要时,我们通过添加属性来表示节点和边。关系或边通常涉及两个离散的实体或节点,尽管实体可以与自身存在关系,这种关系称为自反关系。


在讨论复杂网络的真正样子之前,让我们先谈谈有时称为经典网络的基本简单网络。经典网络的一个例子是线性网络——我们生命的时间线,每个生命事件(例如“出生”、“第一次走路”、“学校毕业”、“婚姻”和最终的“死亡”)都是一个实体至少一个属性是时间。“发生在之后”是这种情况下的关系,因为一条边将两个事件连接在一起,一个事件紧接着另一个事件发生。这个网络之所以被认为是简单的,是因为它具有规则的结构,而不是因为它很小。

线性时间线


点击标题查阅往期内容


航空公司复杂网络对疫情进行建模


01

02

03

04


复杂的网络具有非平凡的结构,它既不是网格也不是树。

由于没有全局控制的分散过程,这些复杂的网络发生在自然界和人造世界中。此类网络的一些代表包括:

  1. 社交网络:家人和朋友、Twitter 和 instagram 追随者等。
  2. 文化网络:宗教网络、语言家族等。
  3. 技术网络:交通和通讯系统等……
  4. 金融网络:华尔街市场、国际贸易等。
  5. 生物网络:基因/蛋白质相互作用、疾病流行等。


R语言复杂网络分析:聚类(社区检测)和可视化


为了用R来处理网络数据,我们使用婚礼数据集查看文末了解数据获取方式

> nflo=network(flo,directed=FALSE)

> plot(nflo, displaylabels = TRUE,+ boxed.labels =+ FALSE)

下一步是igraph。由于我们有邻接矩阵,因此可以使用它

graph\_from\_adjacency_matrix(flo,


+ mode = "undirected")

我们可以在两个特定节点之间获得最短路径。我们给节点赋予适当的颜色

all\_shortest\_paths(iflo,
 )
 
 
> plot(iflo)

我们还可以可视化边,需要从输出中提取边缘

> lins=c(paste(as.character(L)\[1:4\],
+ "--"
+ as.character(L)\[2:5\]  sep="" ,
+ paste(as.character(L) 2:5\],
+ "--",
 
> E(ifl )$color=c("grey","black")\[1+EU\]> plot(iflo)

也可以使用D3js可视化

> library( networkD3 )
> simpleNetwork (df)

下一个问题是向网络添加一个顶点。最简单的方法是通过邻接矩阵实现概率

> flo2\["f","v"\]=1> flo2\["v","f"\]=1

然后,我们进行集中度测量。

目的是了解它们之间的关系。

 

betweenness(ilo)
 
> cor(base)
betw close deg eig
betw 1.0000000 0.5763487 0.8333763 0.6737162close 0.5763487 1.0000000 0.7572778 0.7989789deg 0.8333763 0.7572778 1.0000000 0.9404647eig 0.6737162 0.7989789 0.9404647 1.0000000

可以使用层次聚类图来可视化集中度度量

hclust(dist( ase  ,


+ method="ward")



> for(i in 1:4) rbase\[,i\]=rank(base\[,i\])

在此,特征向量测度非常接近顶点的度数。

最后,寻找聚类(以防这些家庭之间爆发战争)

> kc <- fastgreedy.community ( iflo )

在这里,我们有3类

相关文章
|
9天前
|
机器学习/深度学习 数据可视化 计算机视觉
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
这篇文章详细介绍了如何通过可视化深度学习中每层特征层来理解网络的内部运作,并使用ResNet系列网络作为例子,展示了如何在训练过程中加入代码来绘制和保存特征图。
28 1
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
|
11天前
|
机器学习/深度学习 数据可视化 Windows
深度学习笔记(七):如何用Mxnet来将神经网络可视化
这篇文章介绍了如何使用Mxnet框架来实现神经网络的可视化,包括环境依赖的安装、具体的代码实现以及运行结果的展示。
28 0
|
1月前
|
数据采集 机器学习/深度学习 数据可视化
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。
|
9天前
|
机器学习/深度学习 数据可视化 Linux
Seaborn可视化学习笔记(一):可视化神经网络权重分布情况
这篇文章是关于如何使用Seaborn库来可视化神经网络权重分布的教程,包括函数信息、测试代码和实际应用示例。
19 0
|
1月前
R语言基于表格文件的数据绘制具有多个系列的柱状图与直方图
【9月更文挑战第9天】在R语言中,利用`ggplot2`包可绘制多系列柱状图与直方图。首先读取数据文件`data.csv`,加载`ggplot2`包后,使用`ggplot`函数指定轴与填充颜色,并通过`geom_bar`或`geom_histogram`绘图。参数如`stat`, `position`, `alpha`等可根据需要调整,实现不同系列的图表展示。
|
1月前
|
数据采集 数据可视化 数据挖掘
R语言在金融数据分析中的深度应用:探索数据背后的市场智慧
【9月更文挑战第1天】R语言在金融数据分析中展现出了强大的功能和广泛的应用前景。通过丰富的数据处理函数、强大的统计分析功能和优秀的可视化效果,R语言能够帮助金融机构深入挖掘数据价值,洞察市场动态。未来,随着金融数据的不断积累和技术的不断进步,R语言在金融数据分析中的应用将更加广泛和深入。
|
2月前
|
数据采集 存储 数据可视化
R语言时间序列分析:处理与建模时间序列数据的深度探索
【8月更文挑战第31天】R语言作为一款功能强大的数据分析工具,为处理时间序列数据提供了丰富的函数和包。从数据读取、预处理、建模到可视化,R语言都提供了灵活且强大的解决方案。然而,时间序列数据的处理和分析是一个复杂的过程,需要结合具体的应用场景和需求来选择合适的方法和模型。希望本文能为读者在R语言中进行时间序列分析提供一些有益的参考和启示。
|
5月前
|
数据可视化 数据挖掘 API
【R语言实战】聚类分析及可视化
【R语言实战】聚类分析及可视化
|
5月前
|
机器学习/深度学习 数据可视化
R语言逻辑回归logistic模型ROC曲线可视化分析2例:麻醉剂用量影响、汽车购买行为2
R语言逻辑回归logistic模型ROC曲线可视化分析2例:麻醉剂用量影响、汽车购买行为
|
2月前
|
机器学习/深度学习 数据采集 数据可视化
R语言在数据科学中的应用实例:探索与预测分析
【8月更文挑战第31天】通过上述实例,我们展示了R语言在数据科学中的强大应用。从数据准备、探索、预处理到建模与预测,R语言提供了完整的解决方案和丰富的工具集。当然,数据科学远不止于此,随着技术的不断发展和业务需求的不断变化,我们需要不断学习和探索新的方法和工具,以更好地应对挑战,挖掘数据的潜在价值。 未来,随着大数据和人工智能技术的普及,R语言在数据科学领域的应用将更加广泛和深入。我们期待看到更多创新的应用实例,为各行各业的发展注入新的动力。

热门文章

最新文章