全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1025 5
2021-03-24
悬赏 100 个论坛币 已解决
本人R软件的菜鸟,在这里请教各位大神:
使用igraph包构造网络的一般程序如下:
library(igraph)# 读取节点文件
nodes <- read.table("nodes.txt")
# 读取边文件
links <- read.table("links.txt")
# 创建
netwoknet <- graph_from_data_frame(d = links,vertices = nodes,directed = F)
其中的节点nodes文件结构如下


对于边而言,文件内容一般的格式如下:

如果现在是没有点和边的这种文本文件,只是想自己通过仿真的方式来模拟以上点和边的数据,并生成对应的网络的话,程序应该怎么调整呢?谢谢各位!


最佳答案

llb_321 查看完整内容

igraph的包,数据源可以是data.frame,也可以是matrix。 data.frame的话,就用仿真的数据做成nodes和edge两个文件,然后倒入R,用你上面的graph_from_data_frame()代码生成net,用ggplot2可以绘制。 用matrix的话,需要将仿真数据生成一个邻接矩阵,然后用graph_from_adjacency_matrix()生成net。 两种文件的结构可以参考附件
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-3-24 23:17:42
igraph的包,数据源可以是data.frame,也可以是matrix。
data.frame的话,就用仿真的数据做成nodes和edge两个文件,然后倒入R,用你上面的graph_from_data_frame()代码生成net,用ggplot2可以绘制。
用matrix的话,需要将仿真数据生成一个邻接矩阵,然后用graph_from_adjacency_matrix()生成net。
两种文件的结构可以参考附件
示例数据.rar
大小:(1.33 KB)

 马上下载

本附件包括:

  • netchivago.csv
  • netedge.csv
  • netnodes.csv

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-3-25 21:15:27
llb_321 发表于 2021-3-25 09:43
igraph的包,数据源可以是data.frame,也可以是matrix。
data.frame的话,就用仿真的数据做成nodes和edge ...
谢谢!想继续请教您一下,能否给出仿真程序如何编写基于连接列表的data.frame的code?还有就是仿真数据作出的nodes和edge必须单独做成两个不同的文件吗?还是可以在编程的时候直接在程序中做好,然后画图的时候就可以直接调用了?很多问题都不是太明白,不好意思。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-3-26 08:54:12
其实,igraph画出网络图不难。难点在仿真和数据转换两个环节。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-3-26 15:58:10
我主要考虑是做网络仿真基础上的抽样,但是感觉自己基础不行,好多东西有想法但是不知如何通过程序实现。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群