当我运行这个简单的例子时,igraph会添加一个顶点,而我的顶点从2开始而不是1
# very very simple graph (1-2-3)
edges <- rbind(c(1,2), c(2,3))
write.table(edges, file="edgetest.txt", sep=" ", quote=F, row.names=F, col.names = F)
g <- simplify(read.graph(file="edgetest.txt", format="edgelist", directed=F))
plot(g)
这是运行示例后的样子
有人知道为什么会这样吗?这是好的还是我错过了什么
答案 0 :(得分:4)
read.edgelist()
需要一个文本文件,顶点ID从零开始。如果要将矩阵中的边列表写入文件,请减1:
write.table(edges-1, file="edgetest.txt", sep=" ",
quote=F, row.names=F, col.names = F)
答案 1 :(得分:1)
我认为你通过写出文字和回读来介绍一些错误。 你可以这么做:
edges <- rbind(c(1,2), c(2,3))
g <- graph.edgelist(edges)
plot(g)