Итак, у меня в настоящее время есть фрейм данных, представляющий социальную сеть, например:
id age id1 id2 id3
01 14 02 05 03
02 23 01 05 03
03 52 04 01 02
04 41 03
05 32 01 02
В идеале я хотел бы новый фрейм данных, подобный следующему:
id age id1 id2 id3 Connections
01 14 02 05 03 3
02 23 01 05 03 3
03 52 04 01 02 3
04 41 03 1
05 32 01 02 2
С новымпеременная the представляет количество соединений, которые имеет «id».На данный момент у меня есть код, подобный следующему:
links <- df
links <- as.matrix(links)
links <- as.data.frame(rbind(links[,c(1,3)], links[,c(1,4)]), links[,c(1,5)])
head(links)
library(igraph)
g = graph.data.frame(links)
m = as.matrix(get.adjacency(g))
m
pmax(rowSums(m), colSums(m))
Что дает мне:
1 2 3 4 5 NA
3 3 3 1 2 3
Как я могу затем включить это в фрейм данных для создания переменной "Соединения"?В идеале мои другие данные содержат до 50 соединений, поэтому я хотел бы упростить способ, при котором мне не нужно заново создавать фрейм данных.