有没有办法将图形网络转换为 R 中的关系数据集?

Is there a way to convert a graph network to a relational dataset in R?

我有一个由链接节点组成的数据集,我正在尝试将其转换为简单的关系 table。结构是这样的:

Key1 Key2
A    A
A    B
A    C
B    A
B    B
B    C
C    A
C    B
C    C
D    D
D    E
E    D
E    E
F    F

归根结底,我想弄清楚 R 中是否有一种方法(在循环之外,考虑到集合的大小,这会太慢)来获取所有可能的相关值一个新的唯一主 ID。最终的数据集是这样的:

Master   Key
1        A
1        B
1        C
2        D
2        E
3        F

我找不到关于该主题的任何内容,因为我可能在没有正确术语的情况下提出问题。

感谢任何帮助!

这只是获取图的连通分量。

使用您的数据:

Dat = read.table(text="Key1 Key2
A    A
A    B
A    C
B    A
B    B
B    C
C    A
C    B
C    C
D    D
D    E
E    D
E    E
F    F", 
header=TRUE)

我们把边变成图,得到连通分量。

library(igraph)
g = graph_from_edgelist(as.matrix(Dat), directed=FALSE)
components(g)$membership
A B C D E F 
1 1 1 2 2 3 

请注意,components(g)$membership 是一个具有命名组件的向量。可以使用 names(components(g)$membership)

访问 A、B、C、D、E、F