我有一个csv文件,它有两列,第一列和第二列包含节点,每一行表示无向图的边的节点。我是R的新手,这是我的代码:
library(statnet)
dat <- read.csv('Slashdot081106_nosign.csv')
print(head(dat))
net <- as.network(dat, matrix.type="edgelist")控制台显示:
from to
1 0 1
2 0 2
3 0 3
4 0 4
5 0 5
6 0 6
Error in add.edges.network(g, as.list(x[, 1]), as.list(x[, 2]), edge.check = edge.check) :
(edge check) Illegal vertex reference in addEdges_R. Exiting.我已经搜索了很多关于这个错误的信息,但是都是徒劳的。谁能告诉我如何解决这个问题?
提前感谢!
发布于 2020-03-03 15:58:09
在这一点上,这几乎是一年前的事情了,但我刚刚遇到了同样的问题,并幸运地找到了解决方案。
问题是,对于statnet包,edgelist中的节点必须从1开始索引,而不是从0开始。因此,如果你给每个顶点标识符加1,它应该是有效的。下面的代码应该可以做到这一点。
library(statnet)
dat <- read.csv('Slashdot081106_nosign.csv')
new_dat <- dat + 1
print(head(new_dat))
net <- as.network(new_dat, matrix.type="edgelist")https://stackoverflow.com/questions/55058120
复制相似问题