У меня есть набор данных функций в виде CSV, доступный по ссылке ниже
https://github.com/pranavn91/PhD/blob/master/Expt/27022%20feat.csv
name birthday education classes.from.id
27136 6971 NA NA
27137 841 NA NA
27138 841 NA NA
27139 841 NA NA
У меня есть матрица смежности графа в видеCSV доступен по ссылке ниже
https://github.com/pranavn91/PhD/blob/master/Expt/27022.csv
27139 27138 27136 27137
27139 0 1 1 1
27138 1 0 0 0
27136 1 0 0 1
27137 1 0 1 0
Я хочу преобразовать матрицу смежности в граф и установить атрибуты вершины.но когда я проверяю день рождения первой вершины графа, я получаю 841, т.е. значение второго узла.Также в списке ребер отсутствуют ребра первого узла
library(igraph)
path <- "https://raw.githubusercontent.com/pranavn91/PhD/master/Expt/27022.csv"
dat <- read.csv(path, row.names=1, check.names=FALSE, header=T)
m = as.matrix(dat)
g = graph.adjacency(m,mode="undirected",weighted=NULL)
path2 <- "https://raw.githubusercontent.com/pranavn91/PhD/master/Expt/27022%20feat.csv"
prop <- read.csv(path2,row.names=1, check.names=FALSE, header=T)
head(prop)
for (i in V(g)) {
for (j in names(prop)) {
g <- set.vertex.attribute(g,
j,
index = i,
prop[i + 1, j])
}
}
igraph::degree(g,v=V(g))
###degrees of nodes in g are 27136 - 3, 27137 - 1, 27138 - 2, 27139 - 2
###actual as per adjacency matrix should be 27136 - 2, 27137 - 2, 27138 - 1, 27139 - 3