请选择 进入手机版 | 继续访问电脑版
楼主: ted_gxx
2299 6

[问答] 如何在邻接表没有涉及所有节点的情况下建立邻接矩阵 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

高中生

17%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
97 点
帖子
15
精华
0
在线时间
19 小时
注册时间
2016-5-14
最后登录
2016-6-4

ted_gxx 发表于 2016-5-23 22:14:35 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
我在学习R通过邻接表建立邻接矩阵的过程中 我发现如果给R的邻接表是完整涉及所有节点 即所有节点都至少有边的情况下 那么我用函数
  1. > ab<-graph.data.frame(as.matrix(aa))##邻接表
  2. >ac<-get.adjacency(ab,sparse=FALSE)##转换成邻接矩阵
复制代码


就可以通过邻接表aa得到邻接矩阵ac
但是我在使用中有两个问题:
     1.如果有些节点没有出现在邻接表里面,那么邻接矩阵就会缺少这一行/列,比如我有节点1~100  但是前三个节点没有边相连,那么我的邻接矩阵编号就会从4开始排列,而不是我想要的从1开始。
    怎样的操作可以让R在操作时补全所有的节点?这样的话邻接矩阵就不会缺少

     2. 如果我不做预处理,将邻接表按照大小排序的话,有没有什么方法可以让R来将邻接表排序后在建立邻接矩阵?否则的话,邻接矩阵的行列序号会出现错误

希望能够得到大家的指点与帮助 谢谢!
二维码

扫码加我 拉你入群

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

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

关键词:邻接矩阵 ABA 创建 邻接矩阵

bbslover 发表于 2016-5-24 05:03:58 |显示全部楼层 |坛友微信交流群
使用矩阵表示邻接表不行吗?

你用graph.data.frame等函数,是不是还要计算一些其他指标?如果你知道怎么计算各自的指标,从矩阵开始就可以。

不需要igraph对象。当然igraph对象可以方便的实现很多功能。

使用道具

ted_gxx 发表于 2016-5-24 14:30:23 |显示全部楼层 |坛友微信交流群
bbslover 发表于 2016-5-24 05:03
使用矩阵表示邻接表不行吗?

你用graph.data.frame等函数,是不是还要计算一些其他指标?如果你知道怎么 ...
因为我确实需要一个邻接矩阵 所以请问用矩阵表示邻接表是指什么,是说可以直接生成邻接矩阵吗

使用道具

bbslover 发表于 2016-5-24 19:25:01 |显示全部楼层 |坛友微信交流群
不知道你要adjacency matrix干什么?其实邻接矩阵就是包含连接信息(两个顶点相连用·1·表示,不相连用·0·表示)。实在不行你看看igraph包中的函数吧。

使用道具

楼主有好的解决方案么

使用道具

1.先用hash函数把节点编号和网络位置对应起来
2.把邻接表的节点全部换成网络位置
3.用网络位置表转换成矩阵即可

使用道具

renyn15 发表于 2019-11-13 17:35:32 |显示全部楼层 |坛友微信交流群
林大的不归路 发表于 2019-3-18 10:57
1.先用hash函数把节点编号和网络位置对应起来
2.把邻接表的节点全部换成网络位置
3.用网络位置表转换成矩 ...
您好,我也遇到了相同的问题。请问有没有代码可供参考啊?非常感谢!

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 01:33