igraph read.graph添加一个顶点

时间:2012-11-19 22:01:01

标签: r igraph

当我运行这个简单的例子时,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)

这是运行示例后的样子

enter image description here

有人知道为什么会这样吗?这是好的还是我错过了什么

2 个答案:

答案 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)