igraph read.graph добавляет одну вершину

Когда я запускаю этот простой пример, 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)

Вот как это выглядит после запуска примера

введите здесь описание изображения

Кто-нибудь знает, почему это происходит? Это нормально или я что-то пропустил


person Vitomir Kovanovic    schedule 19.11.2012    source источник


Ответы (2)


Я думаю, вы вносите некоторую ошибку, записывая текст и читая обратно. Вы могли бы просто сделать:

edges <- rbind(c(1,2), c(2,3))
g <- graph.edgelist(edges)
plot(g)
person thelatemail    schedule 19.11.2012

read.edgelist() ожидает текстовый файл, в котором идентификаторы вершин начинаются с нуля. Если вы хотите записать список ребер из матрицы в файл, вычтите 1:

write.table(edges-1, file="edgetest.txt", sep=" ", 
            quote=F, row.names=F, col.names = F)
person Gabor Csardi    schedule 20.11.2012