微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在R中的igraph oblect中转换2个txt文件

如何解决在R中的igraph oblect中转换2个txt文件

下午好。
我有2个txt文件。一列包含节点和其他链接(多列由包含 0(无链接)和 1(定向链接)的空​​格分隔。我在文件中没有任何类型的标题
我想在 R 中导入并在图形对象中转换它们。
节点文件示例。(第 1 列)

135
246
358

....

链接文件示例。(多列)

0     0      0     1     0
1     0      1     0     0
0     0      0     0     0

................................

我尝试了 https://kateto.net/network-visualization 但没有成功。
我在 Excel 中转换它们但没有成功。
请我需要你的帮助...

解决方法

这是一种从两个文件创建图形的方法,一个是节点名称,另一个是邻接矩阵。

假设文件名如下:

nodesfile <- "nodes.txt"
linksfile <- "links.txt"

因为它们分别作为向量和矩阵被读入,所以可以使用函数 scan

nodes <- scan(file = nodesfile,what = character())
links <- scan(file = linksfile)

现在首先将上面的 vector links 强制转换为矩阵,然后创建图形。下面的代码假设图形是有向的,请参阅 help("graph_from_adjacency_matrix")

library(igraph)

links <- matrix(links,nrow = length(nodes),byrow = TRUE,dimnames = list(nodes,nodes))

g <- graph_from_adjacency_matrix(links)
plot(g)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。