У меня есть сетевой граф "G", основанный на следующих ребрах:
library(igraph)
edges <- data.frame(
from=c(1,1,4,4,4,5,5,6),
to= c(2,3,5,6,7,6,7,7))
G <- graph_from_data_frame(d=edges, directed=F)
Этот пример явно содержит 2 подсети, первая с узлами 1,2,3 и вторая с узлами 4, 5.6.7. Я хотел бы:
- Определить, к какому узлу подсети "i" принадлежит.
- Количество узлов в каждой подсети.
Таким образом, в этом примере функция в идеале создаст объект с таким количеством строк, которое равно числу узлов в G, и двумя столбцами: первый содержит вектор, который указывает идентификатор подсети и вторая с размером (gsize) подсети. .
result <- data.frame(
ID=c(1,1,2,2,2,2,2,2),
gsize=c(3,3,3,4,4,4,4,4))
G <- graph_from_data_frame(d=edges, directed=F)
Я новичок в использовании igraph
, поэтому, возможно, есть функция для этого.