#r #networking #undirected-graph #statnet
#r #сеть #неориентированный график #statnet
Вопрос:
У меня есть CSV-файл, в котором есть 2 столбца, первый и второй столбцы содержат узлы, каждая строка означает узлы ребра неориентированного графика. Я новичок в 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.
Я много искал информацию об этой ошибке, однако тщетно. Кто может сказать мне, как решить эту проблему?
Заранее спасибо!
Ответ №1:
На данный момент этому почти год, но я только что столкнулся с этой же проблемой, и мне посчастливилось найти решение.
Проблема в том, что для пакета 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")